2017-02-26 48 views
0

在我運行下面的代碼後。cm = plt.cm.RdBu是什麼意思?

import matplotlib.pyplot as plt 
from matplotlib.colors import ListedColormap 
cm = plt.cm.RdBu 
cm_bright = ListedColormap(['#FF0000', '#0000FF']) 
ax = plt.subplot() 

ax.set_title("Input data") 
# Plot the training points 
ax.scatter(X[:, 0], X[:, 1], c=y, cmap=cm_bright) 
ax.set_xticks(()) 
ax.set_yticks(()) 
plt.tight_layout() 
plt.show() 

上面的代碼顯示這樣的圖像: enter image description here

然而,當我註釋的代碼cm = plt.cm.RdBu,結果不會改變。 那麼,問題是代碼cm = plt.cm.RdBu的用法是什麼?

回答

2

當然,變量cm沒有在腳本中的任何地方使用,所以你可以註釋掉而不用改變任何東西。

cm = plt.cm.RdBu表示顏色圖,就像後面定義的cm_bright = ListedColormap(..)一樣。所以,你可能想用它代替:

ax.scatter(..., cmap=cm) 

對於顏色表的看到matplotlib colormap reference的完整列表。