2016-01-17 114 views
2

我有一個2D數據與我想與imshowseismic顏色映射來顯示它在0.5與2之間 值來設定,但我需要的值1以匹配的白色。matplotlib調整彩條

import numpy as np 
import matplotlib.pyplot as plt 
data = np.random.random((100,100))*2 
data[data<0.5]=0.5 
plt.imshow(data,cmap='seismic') 
plt.colorbar() 

example

我所做的:

plt.imshow(data,cmap='seismic',vmin=0,vmax=2) 

enter image description here

但我不能在我的彩條的0-0.5值。

感謝

+0

可能重複:http://stackoverflow.com/questions/3373256/set-colorbar-range -in-matplotlib – ktbiz

回答

2

使用ColorBar.set_clim()

import numpy as np 
import matplotlib.pyplot as plt 
data = np.random.random((100,100))*2 
data[data<0.5]=0.5 
plt.imshow(data,cmap='seismic', vmin=0.5, vmax=2) 
c = plt.colorbar() 
c.set_clim(0, 2) 

輸出:

enter image description here

+0

謝謝!正是我需要的 – user4421975