Matlab:如何检索情节的标题,xlabel,ylabel和字体



我有一些数字,我想改变一下:

  1. 标题
  2. xlabel 和 ylabel(字体大小和内容)
  3. 刻度大小。

这是我通常的做法:

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

最新更新