问题描述:个人需要在A4纸上打印一条正弦曲线 y = s i n ( x ) y=sin(x) y=sin(x),坐标轴单位长度为1cm,便于后续实验中进行测算。但直接在word/excel中利用X/Y散点图绘制出来的曲线我不知道如何设置单位长度,导致打印出来的曲线真实尺寸不满足要求,其他的较为高级的绘图工具也为使用过,只能自己搞个偏方。如果哪位知道怎么在word图表中设置坐标轴的单位长度,或者有什么好用的绘图工具可以轻松完成上述任务,请赐教一下,感谢!
具体思路:==先绘制比例相同且填充了整个图片的曲线图片,再在word中放缩到真实尺寸。==首先在Matlab中绘制曲线,并使曲线所在坐标系填满整个figure,坐标轴数据单位长度比例为 1 : 1 1:1 1:1。值得注意的是,由于显示器分辨率、点距等原因,直接保存下来的图真实尺寸并不是你设置的。因此将该图导入word中,在word中修改图片长宽为所需尺寸,由此可打印出所需尺寸的曲线。
matlab代码如下
%% 图片格式设置
set(gcf,'unit','centimeters','position',[5 5 7 4]);
%前两个参数的5,5 指的是要生成的图片窗口距离电脑左下角的距离, 后两个参数的7,4指的是生成图片宽、高,此函数设置的单位是厘米,但好像不靠谱
set(gca,'Position',[0 0 1 1]);
%第一个参数a1=0,x轴起点从 <图片宽度*a1> 的位置开始,设为0,则从图片最左侧开始,没有空隙
%第二个参数a2, y轴的起点从 <图片高度*a2> 的位置开始,同样取0
%第三个参数a3,表示x轴的长度占总宽度的比例为a3,此处取1,则,x轴可以填满长度
%第三个参数a4,表示y轴的长度占总高度的比例为a4,同样取1
%% 绘制正弦函数y=sin(x)
x = linspace(-pi,pi);
y=sin(x);
plot(x,y)
axis([-3.5 3.5 -2 2]) % 更改坐标轴范围,使坐标系铺满整个图片
daspect([1 1 1]) % 使x轴和y轴的单位长度相同,比例1:1,函数输入为x,y,z的比例
grid on
hold on
生成图片
此处网格线没有进行过多设置,默认适配的网格线比例为
x
:
y
=
1
:
2
x:y=1:2
x:y=1:2(修改网格线可以参考链接),但不影响曲线尺寸比例。
之后导入word中,按照绘制曲线时的设置,将图片宽设置为7厘米,高设置为4厘米,打印即可。