我使用脚本来获得自动数据处理(多项式插值,切线,...),但是当我在保存之前使用函数集更改我的绘图选项时,我并不总是得到正确的结果:只有字体选项(见代码)似乎工作,而图像非常小,背景颜色不会改变。
我想要的是同时使用我使用的绘图选项的eps和jpg文件。编写这个脚本时,我一直在添加/移动绘图选项,我真的不明白为什么有时会在绘图上出现一些选项,但在保存时似乎会被忽略。
以下是我的代码中包含所有绘图选项的部分,我添加了这三个第一行而不是我所有的处理。
t=linspace(0,10,10);
front=rand(1,10);
fit=front+rand(1,10)/2;
degre=1;
plot(t,fit,'-b','LineWidth',2);
hold on
grid on
plot(t,front,'.r','LineWidth',2);
hold off
l=legend({['Interpolation polynomiale de degre ',num2str(degre)],'Resultats experimentaux'});
set(l,'Color',[0.8 0.8 0.8])
set(gca,'FontSize',12,'FontWeight','bold','Color',[0.8 0.8 0.8]);
set(gcf, 'Units', 'pixels', 'Position', [0, 0, 1200, 1000])
xlabel('\fontsize{14}Temps de maintien (en s)')
ylabel('\fontsize{14}Distance parcourue (en mm)');
str='essai';
title(str)
filename='essai1';
saveas(gcf,filename,'jpg')
saveas(gcf,filename,'epsc2')
尝试修复分辨率问题,我尝试使用set(0, 'DefaultFigurePosition', [0 0 1200 1000]);
更改默认分辨率,但这行代码不会改变任何内容
提前谢谢
答案 0 :(得分:0)
除非您将InvertHardcopy设置为关闭并且尺寸设置为“PaperPositionMode'
”,否则保存图像的背景将为白色set(gcf,'InvertHardcopy','off');
set(gcf,'PaperPositionMode','auto');
set(gcf,'Position', [0, 0, 2400, 2000]); %the resoultion you want
答案 1 :(得分:0)
我设法使用
解决了我的示例脚本中的两个问题 hFig = figure(1);
set(hFig, 'Position', [0 0 1200 1000])
l=legend({['Interpolation polynomiale de degre ',num2str(degre)],'Resultats experimentaux'});
set(l,'Color',[0.8 0.8 0.8])
set(gca,'FontSize',12,'FontWeight','bold','Color',[0.8 0.8 0.8]);
set(gcf,'InvertHardcopy','off');
在情节和情节选项之间。
然而,这不适用于我的主要代码,我试图评论我的大部分非重要的情节选项,看看会发生什么。 如果有人可以让我更好地理解这些选项是如何工作的,那将是很好的,我主要通过尝试和错误进行编码,但这不是最有效的方法。
编辑我解决了我的问题,我在同一个数字上有4个图,我刚写了hold all
而不是hold on
看看Matlab帮助,这应该不起作用,但确实如此。
持有所有与持有相同。 注意:此语法将在以后的版本中删除。请改用hold。
如果有人解释为什么会有效,我想了解发生了什么。 谢谢