使用 MATLAB 和 Visio 制作论文级图形的实用方法
Published:
理论模型论文中的图形通常承担三种任务:
- 展示参数变化与均衡结果之间的关系;
- 呈现不同政策或市场结构的适用区域;
- 说明博弈顺序、参与者关系和信息流动。
MATLAB 适合绘制数值结果、参数区域和利润曲线,Visio 适合绘制博弈顺序图、市场结构图和研究框架图。两者结合使用,可以覆盖理论论文中大多数图形需求。
这篇笔记主要解决几个常见问题:
- MATLAB 图导出后不清晰;
- PDF 四周留白过大;
- 图在 Overleaf 中缩放后字体太小;
- Visio 中的数学公式模糊;
- Visio 导出的 PDF 像一整张页面,而不是紧贴图形;
- PDF 中出现额外边框或阴影;
- 多张图的字体、线型和尺寸不统一。
一、先明确图形的功能
绘图前应先判断这张图要回答什么问题。
1. 结果图
用于展示利润、价格、数量、概率或福利随参数变化的趋势。常见形式包括:
- 折线图;
- 参数区域图;
- 热力图;
- 阈值比较图;
- 分段函数图。
这类图通常使用 MATLAB。
2. 结构图
用于展示:
- 参与者之间的交易关系;
- 产品流、资金流和信息流;
- 侵占前后的市场结构;
- 代理模式和转售模式的差异。
这类图通常使用 Visio。
3. 时序图
用于展示参与者的决策顺序,例如:
- 平台承诺信息政策;
- 需求状态实现;
- 信号生成并被观察;
- 供应商选择渠道;
- 各方定价;
- 消费者购买。
这类图也适合使用 Visio。
一张图最好只承担一个核心功能。不要同时塞入过多结果、公式和解释文字。
二、MATLAB 图形的基本设置
论文图形首先要保证尺寸、字体和线宽统一。下面给出一个可作为起点的模板。
figure;
set(gcf,'Units','Inches');
set(gcf,'Position',[1,1,6.2,4.2]);
plot(x,y,'LineWidth',1.5);
xlabel('Parameter');
ylabel('Equilibrium outcome');
title('Equilibrium outcome under different parameter values');
set(gca,'FontName','Times New Roman');
set(gca,'FontSize',11);
set(gca,'LineWidth',0.8);
box on;
grid off;
需要注意:
Position的后两个数字控制图形宽度和高度;- 图形长宽比应当接近论文最终排版中的显示比例;
- 不要先画一张很大的图,再在 LaTeX 中大幅缩小;
- 字号应当按照最终页面尺寸判断,而不是只看 MATLAB 窗口中的效果。
如果论文采用双栏排版,应分别为单栏图和跨栏图设定固定宽度,避免每张图尺寸不同。
三、MATLAB 导出高清 PDF 的方法
向量 PDF 通常比 PNG 更适合曲线图、区域图和带有文字的学术图形。它在放大后不会明显失真,并且便于插入 Overleaf。
以下代码可以把 MATLAB 当前图形导出为高分辨率 PDF,并尽量减少页面边距:
set(gcf,'Units','Inches');
pos = get(gcf,'Position');
set(gcf,...
'PaperPositionMode','Manual',...
'PaperUnits','Inches',...
'PaperSize',[pos(3),pos(4)]);
set(gcf,...
'PaperPosition',[0.01,0.01,pos(3)-0.02,pos(4)-0.02]);
filename = 'D:\All\2506文献\picture\figure.pdf';
print(gcf,filename,'-dpdf','-r600');
close(gcf);
这段代码的逻辑是:
- 读取当前图形窗口的宽度和高度;
- 让 PDF 页面尺寸与图形窗口一致;
- 将图形放在几乎覆盖整个页面的位置;
- 以 PDF 格式输出;
- 使用
-r600设置较高输出分辨率。
虽然 PDF 中的曲线和文本通常以向量方式保存,但高分辨率设置仍有助于处理图中的栅格元素。
四、为什么导出的 PDF 留白很大
MATLAB 默认的图形尺寸和打印页面尺寸可能不一致。即使 MATLAB 窗口看起来紧凑,输出时也可能被放入一张更大的虚拟纸张中,因此四周出现大量空白。
解决思路是同时控制:
PaperSize:PDF 页面尺寸;PaperPosition:图形在页面中的位置和大小;Position:MATLAB 图形窗口本身的尺寸。
核心原则是:
输出页面的长宽应与图形窗口接近,图形在页面中的位置应尽量覆盖整个页面。
代码中的
set(gcf,'PaperPosition',[0.01,0.01,pos(3)-0.02,pos(4)-0.02]);
表示只在四周保留极小边距。
如果坐标轴标题或图例被裁剪,可以适当增大边距,例如把 0.01 调整为 0.05 或 0.08。
五、使用 exportgraphics 的替代方法
较新的 MATLAB 版本可以使用:
exportgraphics(gcf,'figure.pdf',...
'ContentType','vector',...
'Resolution',600);
或者直接导出坐标轴:
exportgraphics(gca,'figure.pdf',...
'ContentType','vector',...
'Resolution',600);
导出 gca 往往能够更紧密地围绕坐标轴裁剪,但可能不包含坐标轴之外额外添加的注释。导出 gcf 则保存整个 figure。
两种方法可以根据图形结构选择:
- 图中只有一个坐标轴:优先尝试
gca; - 图中包含额外文本、箭头或图例:优先使用
gcf; - 需要精确控制页面尺寸:使用
PaperSize和print。
六、图例、坐标轴和数学符号
论文图应当尽量减少依赖图例。若曲线数量不多,可以直接在曲线附近添加文字标签,使读者不必反复在图例和曲线之间切换。
图例的基本设置示例:
legend({'Policy A','Policy B','Policy C'},...
'Location','best',...
'Box','off',...
'FontName','Times New Roman',...
'FontSize',10);
数学符号可以使用 LaTeX 解释器:
xlabel('$I$','Interpreter','latex');
ylabel('$\Pi_R$','Interpreter','latex');
title('The retailer''s expected profit',...
'Interpreter','latex');
图例也可以设置:
legend({'$\Pi_R^{A}$','$\Pi_R^{B}$'},...
'Interpreter','latex',...
'Box','off');
需要检查导出后的 PDF,而不能只看 MATLAB 窗口。某些公式在窗口中正常,但导出后可能发生字体替换或位置偏移。
七、绘制分段区域图时的注意事项
理论论文经常需要展示“哪个策略在什么参数区域最优”。这类图的重点不是装饰,而是让区域边界与命题一一对应。
应当保证:
- 横轴和纵轴对应命题中的关键参数;
- 每条边界线都有清楚的经济含义;
- 区域标签直接写在相应区域内部;
- 图注说明固定参数取值;
- 颜色、纹理或线型在全文保持一致;
- 不要使用过多相近颜色;
- 即使黑白打印,区域仍然能够区分。
如果图形是由利润比较得到,建议先分别绘制各方案利润,再绘制最终最优区域。这样更容易检查是否遗漏了交点或边界情况。
八、MATLAB 图形的一致性管理
同一篇论文中的所有图应当使用统一设置:
- 字体;
- 字号;
- 线宽;
- 图形宽高;
- 坐标轴格式;
- 同一政策所对应的颜色或线型;
- 同一参数的符号;
- 图例位置;
- 文件命名规则。
可以把公共设置写成一个绘图函数或脚本。例如:
function format_academic_figure()
set(gcf,'Units','Inches');
set(gcf,'Position',[1,1,6.2,4.2]);
set(gca,...
'FontName','Times New Roman',...
'FontSize',11,...
'LineWidth',0.8);
box on;
grid off;
end
每张图绘制完成后调用:
format_academic_figure;
这样可以避免后期逐张调整。
九、使用 Visio 绘制博弈顺序图
Visio 特别适合制作决策顺序图。基本步骤是:
- 确定横向或纵向时间轴;
- 按行动顺序放置节点;
- 用箭头连接相邻阶段;
- 在节点上方或下方标注行动者;
- 明确区分外生状态、信号实现和参与者决策;
- 保持节点尺寸、间距和字体一致。
一个常见结构是:
平台承诺信息政策
↓
需求状态实现
↓
信号生成并被观察
↓
供应商选择渠道
↓
企业定价
↓
消费者购买
绘图时,节点中的文字要简洁。详细解释应放在正文或图注,而不是全部塞入图中。
十、Visio 中数学公式模糊的解决方法
直接在 Visio 文本框中输入复杂公式,字体和排版通常不理想。复制 Word 公式或截图,也可能在导出后变得模糊。
一种更稳妥的方法是:
- 在 LaTeX 公式工具中输入公式;
- 将公式保存为 SVG 格式;
- 把 SVG 文件插入 Visio;
- 调整大小时保持宽高比例;
- 导出为 PDF。
SVG 是向量格式,放大后仍然清晰,适合公式、希腊字母和上下标。
也可以从 LaTeX 或其他公式编辑器生成 SVG,但应当检查字体是否与论文正文协调。
十一、让 Visio 导出的 PDF 紧贴图形
Visio 默认可能把绘图放在一整张页面中,导致导出的 PDF 四周有大量留白。可以采用以下步骤。
第一步:调整页面边距
完成绘图后,在 Visio 中:
- 打开“开发工具”选项卡;
- 点击“显示 ShapeSheet”;
- 选择“页”;
- 找到
Print Properties; - 将以下边距设为较小数值,例如
2 mm:
PageLeftMargin
PageRightMargin
PageTopMargin
PageBottomMargin
第二步:让页面适应绘图
点击:
设计 → 大小 → 适应绘图
这一步会让页面尺寸根据图形内容自动收缩,使导出的 PDF 更接近图形实际边界。
完成后应检查:
- 图形是否过于靠近页面边缘;
- 箭头或文字是否被裁剪;
- 页面长宽比是否适合论文排版。
十二、消除 Visio PDF 中的边框或阴影
有时 Visio 导出的 PDF 会出现不需要的边框、阴影或结构标记。保存为 PDF 时可以:
- 点击“另存为”或“导出 PDF”;
- 打开“选项”;
- 取消:
辅助功能文档结构标记
然后重新导出并检查 PDF。
不同版本的 Visio 菜单名称可能略有差异,但关键是关闭可能额外写入页面结构或辅助标记的选项。
十三、市场结构图的绘制原则
市场结构图应当清楚展示参与者和流向,而不是追求复杂视觉效果。
常见元素包括:
- Supplier;
- Retailer 或 Platform;
- Direct Channel;
- Consumers;
- 产品流;
- 资金流;
- 信息流;
- 竞争关系。
可以使用不同线型表示不同关系:
- 实线箭头:产品或交易流;
- 虚线箭头:信息流;
- 双向箭头:竞争或互动;
- 不同粗细:主要关系和次要关系。
图中必须附有图例,或者在图注中说明不同箭头的含义。不要仅依赖颜色,因为论文可能被黑白打印。
若需要比较侵占前后结构,建议制作两个并列子图,并保持参与者位置尽量一致。这样读者可以快速识别新增渠道和竞争关系。
十四、插入 Overleaf 的推荐方式
PDF 图形可以使用:
\begin{figure}[htbp]
\centering
\includegraphics[width=0.80\textwidth]{figures/figure.pdf}
\caption{The equilibrium outcome under different parameter values.}
\label{fig:equilibrium}
\end{figure}
建议:
- 不要通过过度缩小解决页面占用问题;
- 优先在 MATLAB 或 Visio 中调整图形比例;
- 使用相对宽度,例如
0.80\textwidth; - 每张图都应在正文第一次出现前后被引用;
\label放在\caption之后;- 文件名使用英文、小写和连字符或下划线;
- 图形统一放在
figures文件夹中。
十五、导出后必须进行的检查
图形完成后,至少进行三次检查。
1. 单独打开 PDF
检查:
- 字体是否清晰;
- 公式是否正常;
- 边界是否裁剪;
- 是否存在多余空白;
- 线条是否过细;
- 图例是否遮挡数据。
2. 插入论文后检查
有些图单独查看很清楚,但缩放到论文中后字体过小。必须在最终 PDF 中按正常阅读比例检查。
3. 黑白或灰度检查
检查不同曲线和区域在没有颜色时是否仍然可区分。必要时增加:
- 虚线;
- 点划线;
- 标记符号;
- 区域文字标签;
- 不同填充纹理。
十六、常见问题与处理方法
问题一:图很清楚,但插入论文后字体太小
原因通常是 MATLAB 图形尺寸过大,插入论文时被大幅缩小。解决办法是按照最终版面比例重新设置 figure 尺寸和字体。
问题二:PDF 周围留白太多
MATLAB 中同步设置 PaperSize 和 PaperPosition;Visio 中使用“适应绘图”并缩小页面边距。
问题三:Visio 公式模糊
不要使用截图。将公式导出为 SVG 后插入。
问题四:边界线和命题不一致
回到生成边界的阈值公式,逐条核对严格不等号、弱不等号和参数适用范围。图形不能代替解析条件。
问题五:同一政策在不同图中样式不同
建立统一的绘图模板和政策样式对应表,在开始绘图时就固定下来。
问题六:图很复杂,但读者看不出结论
删除非关键曲线,在图内直接标注最优区域,并在图注中指出图要说明的核心规律。
结语
论文级图形的关键不只是高清,而是清楚、统一并服务于理论结论。
MATLAB 的优势在于把解析结果和数值结果转化为曲线与参数区域;Visio 的优势在于把参与者、决策顺序和市场结构转化为直观框架。二者都应遵循同一个原则:
图形不是对正文的装饰,而是帮助读者更快理解模型结构和核心结论的分析工具。
只要在绘制阶段控制尺寸、字体和边界,在导出阶段使用向量 PDF 并减少空白,在论文中保持统一格式,就能够显著提高理论论文的可读性和专业程度。
