【发布时间】:2014-11-27 15:29:09
【问题描述】:
在 matlab 中将矩阵绘制为多个水平条时(使用barh),matlab 将第一列作为底部条,最后一列在顶部。
然而,图例是相反的,所以第一项是图例中的顶部。
我认为这看起来很混乱。见附图
data = [0.8000 0.1000 0.6000 0.4500
0.3000 0.5000 0.7000 0.3500
0.4000 0.4500 0.2000 0.5000];
barh(data);
legend('Column 1', 'Column 2', 'Column 3', 'Column 4');
如何反转图例顺序?
(将legend命令中的item顺序颠倒,只是改变了图例中的字符串,并没有改变颜色,所以顺序还是倒过来了,标签是错误的..)
【问题讨论】:
-
哪个版本的 Matlab?
-
这是个好问题。 Octave 表现出相同的行为,我还没有找到重新排序图例条目的方法。文件交换提交
reorderLegend(mathworks.co.uk/matlabcentral/fileexchange/37265-reorderlegend) 听起来很有希望,但它似乎不适用于条形图。不过,这可能是一个很好的起点。