【原始碼】高階色彩繪圖函式linspecer
MATLAB自帶的line spec和colormaps是非常粗糙簡單的。linspecer函式的線條繪圖基於perceptive空間,而不是RGB空間。函式編寫是基於Cynthia Brewer教授的研究成果,且易於使用。
linspecer函式建立一個N x 3的[R G B]色彩矩陣,使用舉例如下:
lineStyles = linspecer(N); 建立N種顏色用於不同線條的繪製;
colormap(linspecer); 以容易區分並令人愉悅的美學風格設定colormap;
lineStyles = linspecer(N,‘qualitative’); 強制所有的色彩都是可區分辨別的,最多可以達到12種;
lineStyles = linspecer(N,‘sequential’); 強制所設定的色彩沿光譜變化。
% LINE COLORS
N=6;
X = linspace(0,pi3,1000);
Y = bsxfun(@(x,n)sin(x+2n*pi/N), X.’, 1:N);
C = linspecer(N);
axes(‘NextPlot’,‘replacechildren’, ‘ColorOrder’,C);
plot(X,Y,‘linewidth’,5)
ylim([-1.1 1.1]);
% SIMPLER LINE COLOR EXAMPLE
N = 6; X = linspace(0,pi3,1000);
C = linspecer(N)
hold off;
for ii=1:N
Y = sin(X+2
plot(X,Y,‘color’,C(ii,:),‘linewidth’,3);
hold on;
end
% COLORMAP EXAMPLE
A = rand(15);
figure; imagesc(A); % default colormap
figure; imagesc(A); colormap(linspecer); % linspecer colormap
MATLAB原始碼下載地址:
http://page5.dfpan.com/fs/clccj2e217295169371/
更多精彩文章請關注微訊號: