如何在plotyy()中为在右Y轴上绘制的多个数据集单独定义线属性

时间:2015-05-20 19:30:10

标签: matlab matlab-figure

从MATLAB帮助中考虑以下示例。

enter image description here

x = linspace(0,10);
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
y3 = 0.2*exp(-0.5*x).*sin(10*x);

figure
[hAx,hLine1,hLine2] = plotyy(x,y1,[x',x'],[y2',y3']);

我需要在右Y轴上单独定义两个图的颜色。另外,我们如何在左右YLabels中定义文本颜色?

1 个答案:

答案 0 :(得分:3)

检查hLine2,第二轴的手柄。在这个例子中,它实际上是一个2x1向量,分别对应第一行和第二行的句柄。

set(hLine2(1), 'Color', desired_color_1)
set(hline2(2), 'Color', desired_color_2)

类似地,轴手柄hAx是一个2x1向量,它使您可以分别访问左轴和右轴的轴属性。例如:

set(hAx(1), 'LineWidth', 2)

要访问更深层的子属性,例如文本标签:

h_ylab_1 = get(hAx(1), 'YLabel');
set(h_ylab_1, 'String', 'YLabel text')
set(h_ylab_1, 'Color', desired_text_color)