在matlab中更改binscatter图的颜色

时间:2018-04-22 22:26:07

标签: matlab graph scatter

我想改变我所做的binscatter的颜色,但我不确定语法是什么。我看到我可以使用colormap(gca,' parula')但我想将其更改为一种特定的自定义颜色。反正有吗?

1 个答案:

答案 0 :(得分:0)

您可以通过创建RGB三元组矩阵来定义自己的色彩映射。此矩阵应为m-by-3矩阵,其值介于0和1之间。每行代表地图中的一种颜色。

map = [0.1 0.5 0.1
       0.3 0.5 0.3
       0.5 0.5 0.5
       0.7 0.5 0.7]

然后以您自己建议的方式使用地图。

colormap(gca,map) 

如果您不想手动输入您想要的所有颜色,可以通过这样做来生成它们:

n = 40; % Number of colors
R = linspace(0,1,n); % Red color changes
G = linspace(0,0,n); % Green color changes
B = linspace(0,0,n); % Blue color changes

map = [R',G',B']; % Compose colormap
colormap(gca, map) % Set colormap

这将为40色的颜色图提供从黑色到红色的颜色。您可以在linspace中试验开始值和结束值,以获得其他颜色组合。基本上map中的每一列都将描述您希望每种颜色如何变化。

除了parula之外,还有更多预定义的色彩映射。如果你向下滚动一下,你可以在这里找到它们。 Colormaps