【发布时间】:2014-08-26 00:57:15
【问题描述】:
我正在尝试制作一个简单的绘图(对于这个示例,绘制 y=x^2 的绘图就足够了),我想在给定一些颜色图的情况下根据它们的大小设置点的颜色。
按照我的简单示例说我有:
x = 1:10;
y = x.^2;
使用gscatter(x,y,jet(10)); legend hide; colorbar 生成带有彩色点的图,但颜色条与彩色值不一致。 (无法发布图片,因为这是我的第一篇文章)。使用caxis([1,100]) 命令给出了正确的范围,但颜色仍然关闭。
所以我有两个问题: (1) 如何修复颜色以适应给定范围的颜色条?在我的真实数据中,在某些情况下,我正在查看范围从 -50 到 50 的值,并且有更多的数据点。
(2) 我想用相同的点(但在不同的轴上)创建一个不同的图,并且我希望这个新图上每个点的颜色与前一个图中对应的颜色相同。如何以编程方式从每个点中提取颜色,以便将其绘制在两组不同的轴上?
我只是将这些点移动到一个矩阵中并执行一个imagesc() 命令,但它们不是整数间隔,或者同样简单的缩放也不起作用。
感谢您的帮助!
【问题讨论】:
-
我发现如果我使用类似于
mesh(zeros(3,10),[x;x;x],[y;y;y]); view(90,0)的东西,我会得到正确的情节并且颜色与条形一致。为什么这行得通,因为我传递了一个 3x3 矩阵,因为网格不会接受向量参数。如何获取每个点的颜色?
标签: matlab plot colorbar colormap