我使用
创建了一个包含两个数据集的图,分别在主Y轴和辅助Y轴上[ ha, hl1, hl2 ] = plotyy( xr, yr, xq, yq );
然后我用
格式化了这些行set( hl1, 'Linestyle', '-' ); set( hl1, 'Color', 'b' ); % solid, blue
set( hl2, 'Linestyle', '--' ); set( hl2, 'Color', 'r' ); % dash, red
我终于为
创建了一个共同的传奇hl = legend( [ hl1, hl2 ], 'r', '\theta/\pi' );
我想( xr, yr, xq, yq )
的内容并不重要。正确绘制了两条线,每条线都在正确的轴上。
图例中的第一行应该有一条(实线,蓝色)线条 第二行应该有一个(短划线,红色)线。 结果相反(见图)。
如果我使用
,这是一样的hl = legend( [ hl2, hl1 ], 'r', '\theta/\pi' );
如果我用分号[ hl2; hl1 ]
更改逗号。
这样做的正确方法是什么?
答案 0 :(得分:1)
使用octave-4.0.1-rc4,默认为graphics_toolkit(“qt”),结果似乎很好。
x = linspace(0, 2*pi, 101);
[ha, hl1, hl2] = plotyy(x, sin(x), x, -sin(x));
set( hl1, 'Linestyle', '-' ); set( hl1, 'Color', 'b' ); % solid, blue
set( hl2, 'Linestyle', '--' ); set( hl2, 'Color', 'r' ); % dash, red
hl = legend( [ hl1, hl2 ], 'r', '\theta/\pi' );
除了\theta/\pi
未正确解释。
无需提交错误报告,因为它已在开发版本中得到解决。
但是对于4.0.1和graphics_toolkit("gnuplot")
,情节很好:
所以可能是时候升级了。以下是ftp site和windows installers。
答案 1 :(得分:0)
使用像ederag这样的代码
x = linspace(0, 2*pi, 101);
[ha, hl1, hl2] = plotyy(x, sin(x), x, -sin(x));
set( hl1, 'Linestyle', '-' ); set( hl1, 'Color', 'b' ); % solid, blue
set( hl2, 'Linestyle', '--' ); set( hl2, 'Color', 'r' ); % dash, red
hl = legend( [ hl1, hl2 ], 'r', '\theta/\pi' );
我发现添加了这行
set( hl, 'fontsize', 20 );
反转图例中的线条后。据我所知,这是无法解释的(可能是一个错误?)。