从蓝色到白色渐变的 contourf 颜色图
contourf colormap from blue to white with gradient
我想更改绘图中的颜色图,从黄色到蓝色,从蓝色到白色;只有两种渐变颜色。可能吗?
代码:
x = randn(1000,1);
y = randn(1000,1);
[N,Xedges,Yedges] = histcounts2(x,y);
contourf(N)
非常欢迎任何帮助。
您可以使用 colormap
函数指定要在图中使用的颜色图。颜色图只是一个 three-column 矩阵,其值介于 0
和 1
之间,代表 R、G、B 分量,因此您可以手动创建它。例如,要生成一个从蓝色到白色的简单颜色图:
N = 256; % number of colors
cmap = [linspace(1,0,N).' linspace(1,0,N).' ones(N,1)]; % decreasing R and G; B = 1
colormap(cmap)
但是,此色图在感知上并不均匀,也就是说,感知到的“色差”在整个颜色范围内并不均匀。要生成从蓝色到白色的感知均匀颜色图,我建议使用 user-contributed BrewerMap
函数和 'Blues'
选项:
N = 256; % number of colors
cmap = brewermap(N, 'Blues');
colormap(cmap)
我想更改绘图中的颜色图,从黄色到蓝色,从蓝色到白色;只有两种渐变颜色。可能吗?
代码:
x = randn(1000,1);
y = randn(1000,1);
[N,Xedges,Yedges] = histcounts2(x,y);
contourf(N)
非常欢迎任何帮助。
您可以使用 colormap
函数指定要在图中使用的颜色图。颜色图只是一个 three-column 矩阵,其值介于 0
和 1
之间,代表 R、G、B 分量,因此您可以手动创建它。例如,要生成一个从蓝色到白色的简单颜色图:
N = 256; % number of colors
cmap = [linspace(1,0,N).' linspace(1,0,N).' ones(N,1)]; % decreasing R and G; B = 1
colormap(cmap)
但是,此色图在感知上并不均匀,也就是说,感知到的“色差”在整个颜色范围内并不均匀。要生成从蓝色到白色的感知均匀颜色图,我建议使用 user-contributed BrewerMap
函数和 'Blues'
选项:
N = 256; % number of colors
cmap = brewermap(N, 'Blues');
colormap(cmap)