修改字体
// 将图中字体大小为8pt修改为5pt
set(findobj('FontSize',8),'FontSize',5);
//将图中字体修改为加粗
set(findobj('FontWeight','normal'),'FontWeight','bold');
//将图中字体修改为宋体
set(findobj('Fontname', 'Helvectica'),'Fontname', '宋体')
//更改图的markersize
set(findobj(get('MarkerSize',3),'MarkerSize',6);
//注意上面的命令会将所有符合字体进行修改,包括图中的标签,但是如果一张fig存在有多张子图,
//但是你只想修改一张子图,使用命令 get(gca,'Children')
// 比如
//更改子图中的MarkerSize
set(findobj(get(gca,'Children'),'MarkerSize',3),'MarkerSize',6);
大概常用的代码如上,但是如果需要细致调整,可以通过查看->属性检查器调用这个UI控件进行细致调整。
修改坐标轴的
一般投稿需要比较变态的字体要求,比如单位斜体,中英文不同,这个真的要吐,还有可以使用公式作为坐标,下面的一一详解
- 首先是一种比较简单的统一设置
set(get(gca,'XLabel'),'FontSize',8,'FontWeight','bold','Vertical','middle');
set(get(gca,'YLabel'),'FontSize',8,'FontWeight','bold','Vertical','middle');
//设置坐标轴对应的字体、粗细、以及位置,同理可以加上fontname、fontangle等参数
- 中英文字体不同,比如中文宋体,英文Times New Romance
xlabel(['\fontname{宋体}准确率\fontname{Times New Romance}accuracy\fontname{仿宋}这个随便写写的呀 '])
// 注意,这里对应的interpreter是tex,而且只能设置字体,大小、粗细、角度都不能设置,因为这里在属性检查器中对应的就是只有string部分


- 公式
这部分我还没用到,但是当时刚好看到有这个功能,具体的使用也是对应的代码,但是一下公式的对应的latex格式则需要自己去查查了
ylabel('\boldmath$\varepsilon_s$','interpreter','latex')
// 这里的interpreter一定要是latex,而且这种情况下好像不能写中文了,具体没有细究,后面有研究结果后再继续补充
- 单位斜体
ylabel(['\fontname{宋体}准确率 /\it%'])
// 加个\it 就好了
一些关于latex或者tex解释器对应的命令可以看看这个blog
但是这个有个比较严重的问题就是,导出来的eps文档不是斜体啊,难看的不要不要的
但是转化为ipg是可以保存的,而texify插入jpg好像不行,因为jpg需要600dpi(后面再说如何导出来),这个dpi的图像太大了,所以后面经过艰苦的尝试(ps,jpgtoeps等等),我最后试出来了一种方法:
首先将图像导出为pdf,再通过Adobe编辑调整,再转成eps格式
但是导出的eps可能颜色失真,可通过设置颜色管理来控制,具体可看blog
但是这里导出eps具有很多白边,可以利用visio来处理,具体处理可以看这个blog,但是我电脑没有visio,所以我只能在ctex上慢慢裁了。
fig图像导出
这个就可以通过fig上的文件->导出设置,设置相关参数,然后应用,导出就可以了。


本文介绍了在MATLAB中如何修改fig图像的字体、坐标轴和进行图像导出。针对投稿需求,详细讨论了如何设置中英文字体、使用公式以及处理单位斜体。在遇到导出EPS图像时出现的问题,如颜色失真和白边,提供了通过Adobe编辑、PDF转换和Visio处理等解决方案。
4931

被折叠的 条评论
为什么被折叠?



