我偶然使用color
而不是c
作爲matplotlib散點圖中的顏色參數(c
在文檔中列出)它可以工作,但結果是不同的:默認情況下邊緣顏色消失。現在,我想知道,如果這是期望的行爲,以及如何以及爲什麼這個工程...matplotlib分散的顏色參數是`c`,但`color`也可以;刺。差異。結果
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots(nrows=2, ncols=2, figsize=(10,10))
samples = np.random.randn(30,2)
ax[0][0].scatter(samples[:,0], samples[:,1],
color='red',
label='color="red"')
ax[1][0].scatter(samples[:,0], samples[:,1],
c='red',
label='c="red"')
ax[0][1].scatter(samples[:,0], samples[:,1],
edgecolor='white',
c='red',
label='c="red", edgecolor="white"')
ax[1][1].scatter(samples[:,0], samples[:,1],
edgecolor='0',
c='1',
label='color="1.0", edgecolor="0"')
for row in ax:
for col in row:
col.legend(loc='upper left')
plt.show()
非常好的解釋!謝謝! – Sebastian
+1值得一提的是,'c'不完全等同於'facecolor'。 'c'參數意味着(除其他外)允許將標記的顏色映射到一個值數組,而'facecolor','color'等不允許使用它。 –
嗨,@JoeKington,實際上在新版本(> 1.3.1)中不再是這種情況,在OP的例子中,你現在可以通過,例如'facecolor = matplotlib.cm.jet(samples)[ :,1,:]'或'c = matplotlib.cm.jet(樣本)[:,1,:]'以得到一袋彩色圓點。乾杯! –