• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

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

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
 
 
%用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...】进行设置,注意要将背景色设置为强制白色,设置之后的选项如图所示:
      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图形窗口的做法为点击图形窗口右上角的小箭头,如图所示:
 
重调图形大小时所需【通过代码完成】:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%获取希望重调图形大小时所需的宽高控制值,需要更改期望的图形宽高值与屏幕的英寸大小值!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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里再调整大小
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap