2012-03-08 91 views
0

我該如何指定類似的內容:如果繪製的值爲< 10,如果它的顏色是紅色,如果它是> 20,那麼它是藍色的,如果它在黑色之間?MATLAB - 顏色編碼圖

回答

3

簡單的例子:

x=1:0.1:30; 
y=x; 

hold on 
plot(x(y<10), y(y<10),'o','color','red'); 
plot(x(y>20),y(y>20),'o','color','blue'); 

在y(Y < 10)是logical indexing,並且是關鍵此。

0

如果您繪製曲面,以下內容將生效。

set(gca, 'CLim', [0 30]) 
set(gcf, 'Colormap', [1 0 0; 0 0 0; 0 0 1]) 
0

如果你正在繪製一條線,那麼我建議使用MATLAB Central的color_line。您仍然需要設置所需的顏色映射,但使用此方法,您將根據值繪製一條着色線。

使用邏輯索引來分離數據的一個缺點是,當您繪製它們時,它們被視爲單獨的數據塊。所以許多繪圖工具只能處理一組數據,繪製一個圖例,並且您將爲每組數據獲取一個項目。

使用color_line將會是不同的顏色,但它將被視爲一個數據項。