我有一些数字,我想改变一下:
- 标题
- xlabel 和 ylabel(字体大小和内容)
- 刻度大小。
这是我通常的做法:
title('new title ');
xlhand = get(gca,'xlabel');
set(xlhand,'string','xlabel','fontsize',13);
ylhand = get(gca,'ylabel');
set(ylhand,'string','ylabel','fontsize',13);
set(gca,'FontSize',13);
它通常工作正常。但是,当我想编辑使用ploty功能制作的绘图时,它不起作用。唯一的影响是我的右边的y标签改变了。
我知道,由于我现在有两个ylabel,因此更改它们并不像正常情节那么容易。但是,我很惊讶我无法更改 xlabel 和标题。为什么?
上面的代码与 plotxy 函数有什么问题?我怎样才能让它工作?该文档不包含任何相关信息。
我正在使用 Matlab R2015a。
编辑:是的,我的意思是情节(我的问题中有错字)。以下是文档中的示例代码:
x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
figure % new figure
plotyy(x,y1,x,y2)
如果您查看文档,您会发现plotyy
可以返回轴手柄。因此,首先,您可以选择获取句柄:
Ax = plotyy(x,y1,x,y2);
现在,Ax(1)
是左轴的手柄,Ax(2)
是右轴的手柄。因此,您可以更改每个属性,例如
set(Ax(1),'FontSize',13);
由于我不完全理解的原因,设置标签是使用
set(get(Ax(1),'YLabel'),'String','Whatever you want...');
编辑:
如果已绘制数据,则可以使用
Ax = findobj(gcf,'type','axes')
从不使用get
的文档,set
:
x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
figure % new figure
hAx = plotyy(x,y1,x,y2);
title('Multiple Decay Rates')
xlabel('Time (musec)')
ylabel(hAx(1),'Slow Decay') % left y-axis
ylabel(hAx(2),'Fast Decay') % right y-axis
然后将值更改
xlabel('New label','fontsize',10)
title('New Title','fontsize',10)
ylabel(hAx(2),'Fast Decay','fontsize',20)
hAx(1).FontSize=5