注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

AlexYoung

做好大家都必须要做的事,发展自己感兴趣的事,结束圣人所不齿的事...

 
 
 

日志

 
 

matlab 设置绘图的大小,字号,线宽,字体--按投稿要求  

2012-06-19 22:23:07|  分类: MATLAB应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
%用matlab画了一张图,投稿时要缩小,缩小后字体就会过小或者发虚,可以用下列语句操作。
%或许这并不能完全适应您的要求,但是可以吸收该语句中有用的部分,
%可用于代码调图而不需要对每个图都在图形编辑界面用鼠标一项一项地调!
%网上比较流行的一种方式为以下一段代码,并且通过摸索,个人对此进行了完善。
%%%%%%%%%%%%%%%%%%%%%
%plot your figure before
%%%%%%%%%%%%%%%%%%%%%
% figure resize
set(gcf,'Position',[100 100 260 220]);
set(gca,'Position',[.13 .17 .80 .74]);
figure_FontSize=8;
set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top');
set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','middle');
set(findobj('FontSize',10),'FontSize',figure_FontSize);
set(findobj(get(gca,'Children'),'LineWidth',0.5),'LineWidth',2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
解释:
set(gcf,'Position',[100 100 260 220]);
这句是设置绘图的大小,不需要到word里再调整大小。我给的参数,图的大小是7cm
set(gca,'Position',[.13 .17 .80 .74]);
这句是设置xy轴在图片中占的比例,可能需要自己微调。
figure_FontSize=8;
set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top');
set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','middle');
set(findobj('FontSize',10),'FontSize',figure_FontSize);
这4句是将字体大小改为8号字,在小图里很清晰
set(findobj(get(gca,'Children'),'LineWidth',0.5),'LineWidth',2);
这句是将线宽改为2
------------------------------------------------------------
另一个问题:图片的提取
      1.如果只是简单地【file】->【Save As】则图片质量确实不是那么好!
      2.这里推荐另一种提取方式:【Edit】->【Copy Figure】,在Copy之前还应该对【Copy Options...】进行设置,注意要将背景色设置为强制白色,设置之后的选项如图所示:
【转载】matlab 设置绘图的大小,字号,线宽--按投稿要求 - 青楼薄名 - Alex小奎子
      3. 可以通过imwrite函数保存图片,例如
FG=getframe(gcf);
imwrite(FG.cdata,'FG.jpg')
另外,控制坐标轴上标度值的字体格式命令:
%--------------------------------------------------------------------------
%设定坐标轴的标度值字体为Times New Roman
clf;
axes1=axes('parent',gcf,'fontname','times new roman');
box(axes1,'on');
hold(axes1,'all');
%--------------------------------------------------------------------------
重调图形大小时所需【通过编辑窗口完成】:
一定要在图形窗口undocked的状态下,【File】->【Export SetUp】进行相关设置,之后应用上述的【Edit】->【Copy Figure】即可;
undock图形窗口的做法为点击图形窗口右上角的小箭头,如图所示:
matlab 设置绘图的大小,字号,线宽,字体--按投稿要求 - 青楼薄名 - Alex小奎子
 
重调图形大小时所需【通过代码完成】:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%获取希望重调图形大小时所需的宽高控制值,需要更改期望的图形宽高值与屏幕的英寸大小值!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Width=7;Height=5;%单位为厘米!!!这里根据需求更改。。。
ScreenSize=14.1; % 屏幕大小,单位为英寸,且应该注意该值通常指对角线的长度,需根据勾股定理计算宽高
ScreenSizeInCM=ScreenSize*2.45; %1英寸等于2.45厘米,长度换算
scrsz = get(0,'ScreenSize');  %得到屏幕分辨率
ScreenWidth=ScreenSizeInCM/sqrt(1+(scrsz(4)/scrsz(3))^2);%屏幕宽,单位为厘米
ScreenHeight=ScreenWidth*scrsz(4)/scrsz(3);%屏幕高,单位厘米
WidthRatio=Width/ScreenWidth;%图形的期望宽度与屏幕宽度的比值
HeightRatio=Height/ScreenHeight;%图形的期望高度与屏幕高度的比值
set(gcf,'Unit','Normalized','Position',[0.1 0.1 WidthRatio HeightRatio]);%设置绘图的大小,无需再到word里再调整大小
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  评论这张
 
阅读(5203)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018