【发布时间】:2016-10-23 11:32:42
【问题描述】:
我想制作一个有点像散点图但带有矩形的图。每个矩形都需要具有特定的大小和由坐标确定的起始位置。我能得到的都是。
然而,我想做的是用另一个值 z 为每个矩形着色。但是我不知道该怎么做。
您可以使用下面的代码查看我正在尝试的内容。
x=rand(1,10)*10;
y=rand(1,10)*10;
w=rand(1,10)*5;
h=rand(1,10)*20;
axis([0 10 0 20]);
for i=1:10
rectangle('Position',[x(i) y(i) w(i) h(i)])
endfor
这会产生附加的图表
编辑:我知道“FaceColor”和“EdgeColor”属性,但是如果我有很多矩形......比如说100个左右,并且我想用相应的z值为每个矩形着色,我似乎无法做到让这些属性接受 Z 值数组。
【问题讨论】:
-
阅读the documentation。
'FaceColor'和'EdgeColor'属性已明确记录... -
是的,我了解“FaceColor”和“EdgeColor”......这些属性允许我通过输入 RGB 三元组来着色......但是如果我有一百个矩形要着色怎么办。 ...我可以使用带有 Z 值数组的 FaceColor ....它似乎不起作用。
-
然后将 Z 值映射到 RGB 三元组。
-
StackOverflow 不是代码编写服务。在期望别人努力之前先尝试付出一些努力。
-
colormap lines 可能有用。更好的方法是使用glasbey colormap,但这不在 Octave 中,但您可以自己轻松制作。只需将颜色复制到矩阵中,然后将 RGB 重新缩放到 [0 1] 范围。
标签: octave