【Matlab】代码自动写word文档画图,修改figure尺寸的方法

该文介绍了如何在MATLAB中使用数据x和y画图,设置figure尺寸,并将图形通过print命令无损粘贴到Word文档中,强调了图例和图像尺寸的控制问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

假设有两组数据x和y。

x=[1,2,3];
y=[3,4,5];

要用这两组数据在matlab中画图,并粘贴到word文档中。首先用代码创建word文档

word     = actxserver('Word.Application');%打开word服务器
document = word.Documents.Add;%新建doc文档
word.Visible = 1; %doc文档可见
selection = word.Selection;%定位光标位置

开始画图:首先定义一个figure,并设定它的尺寸大小。可按像素或按厘米定义尺寸大小,具体描述在下面的注释当中。用plot命令画图,并添加图例,进行字体大小和线型调整。

明确一个概念,matlab画图是在“图窗”这个画板上绘制我们需要的曲线等“图像”。

f2 = figure();

% 设置figure图窗相对于电脑屏幕的尺寸:[图窗左边界距离屏幕左边界的距离,图窗下边界距离屏幕下边界的距离,图窗x轴方向长度,图窗y轴方向长度]
set(gcf,'Position',[100 100 280 230]);

% 设置figure图窗中所画图像的尺寸:[图像左边界距离图窗左边界的距离,图像下边界距离图窗下边界的距离,图像x轴方向长度,图像y轴方向长度]
set(gca,'Position',[0.1 0.15 0.83 0.76]);

% 以厘米为单位定义尺寸大小
set(gcf,'unit','centimeters','Position',[10 10 9.5 10]);
set(gca,'unit','centimeters','Position',[1 1 8 8.5]);

plot(x,y,'k','LineWidth',1.5);% 画图
set(gca,'FontSize',7);% 设置图中字体大小
xlabel('x');ylabel('y');title('画图','FontSize',7);
legend('画图','Location','NorthWest','FontSize',7);

将所画图片发送到剪切板上。

这一步可以用print或hgexport命令,笔者目前感觉用前者较好,因为前者能将图窗中的图片“原封不动”粘贴到word中,而后者在粘贴过程中存在类似缩放,有时会出现图例遮挡曲线的情况——总之就是和图窗预览看到的不一样,原因暂时不明,有大佬知道的话求解释。

print(f2,'-dbitmap');

然后粘贴到word文档中。

selection.Start = selection.end;
selection.Range.PasteSpecial; % 粘贴

总体效果如下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值