我使用MATLAB的plotyy函数绘制了两条曲线:
[AX,H1,H2] = plotyy(voltage_span, amplitude,voltage_span, Ca_SR);
问题是我无法改变第二轴(右边)的颜色和字体。下图是我的plotyy函数的输出。
MATLAB帮助指出,要更改轴的标签,应使用以下内容:
set(get(AX(1),'Ylabel'),'String','Slow Decay')
set(get(AX(2),'Ylabel'),'String','Fast Decay')
所以,我尝试了以下命令(不起作用):
set(get(AX(2),'YColor'),[1 0 1]); % MATLAB gives ERROR! Invalid handle object.
如果输入get(AX(2)),他们可以看到右轴的所有属性,似乎没有颜色属性。所以我想知道问题出在哪里以及如何更改右轴的颜色和字体大小(?)
答案 0 :(得分:2)
要更改右轴的字体大小,请输入以下代码:
set(AX(2),'YColor', [1 0 0]); % Change the right Axis's color to red
set(AX(2),'FontSize', 20); % Change the right Axis's font size to 20
“YColor”属性是右轴的颜色。 Ax(2)将手柄固定在右轴上(Ax(1)固定在左轴上)。
您可能会问为什么以下情况不起作用:
set(get(AX(2),'YColor'),[1 0 1]);
原因是“YColor”不是句柄和
get(AX(2),'YColor')
只返回右轴的颜色(默认为浅绿色):
>> get(AX(2), 'YColor')
ans =
0 0.5000 0
但是,要更改左轴标签,您应该写下:
set(get(AX(2),'Ylabel'),'String','Fast Decay')
因为'Ylabel'属性实际上包含标签对象的句柄。
顺便说一句,要删除右轴的XTicks,请执行以下操作:
set(AX(2),'XTick', []);
答案 1 :(得分:1)
set(AX(1), 'YColor', [0 1 0])
set(AX(2), 'YColor', [1 0 1])