如何在MATLAB中使用渐变标记颜色创建散点图?

use*_*275 5 matlab scatter point colors

我想在MATLAB中绘制一个简单的散点图,标记颜色从光谱的一端到另一端(例如红色,橙色,黄色......蓝色,紫色)不等.

我的数据比较了河流中的水量和水的质量,随着时间的推移(3个简单的列:时间,数量,质量).我想绘制数量与质量的x,y散点图,但随着时间的推移,颜色会逐渐变化,这样就可以看到质量随时间的变化.

我需要生成许多这种类型的图形,所以如果我能找到一段适用于任何长度数据集的代码,那将非常有用.

非常感谢提前帮助Matlab新手!

Sha*_*hai 10

您可以使用颜色参数 scatter

如果您的数据已经按时间排序而不是简单地使用:

% let n be the number of points you have
cmp = jet(n); % create the color maps changed as in jet color map
scatter(x, y, 10, cmp, 'filled');
Run Code Online (Sandbox Code Playgroud)

否则,您需要先对数据进行排序:

[time, idx] = sort(time);
x = x(idx);
y = y(idx);
cmp = jet(n); % create the color maps changed as in jet color map
scatter(x, y, 10, cmp, 'filled');
Run Code Online (Sandbox Code Playgroud)