2012-08-01 48 views
2

我有一個顯示圓圈中的標記的圖。我想能夠改變其中3個的顏色。我已經嘗試使用一個變量爲markerfacecolor如下,但不起作用:更改Matplotlib中某些標記的markerfacecolor

angle = 0.0 
    colorR = 'red' 
    angleUpdate = 2 * numpy.pi/(len(v.T)) 
    for i in range(len(v.T)): 
     x = numpy.sin(angle) 
     y = numpy.cos(angle) 
     angle += angleUpdate 
     if i < 3: 
      colorR = 'green' 
     v[0, i] = x 
     v[1, i] = y 
    plt.plot(v[0], v[1], 'ko', markerfacecolor = colorR, markersize = 70, clip_on = False) 
    plt.show() 

有沒有這樣做的方式?

回答

1

在您的地塊'ko'表示放置一個黑色圈標記; k代表黑色。你應該嘗試:

plt.plot(v[0], v[1], 'o', markerfacecolor = 'red') 

讓其他符號的縮寫,顏色嘗試:

help(plt.plot) 

您可以使用plotscatter,這取決於實現你的情況下,你在做什麼:

import pylab as plt 
x=[1,2,3,4,5,6,7,8,9,10] 
plt.plot(x[:5],x[:5],'o',c='r',markersize=10) 
plt.plot(x[5:],x[5:],'o',c='b',markersize=10) 
plt.show() 

將生成, enter image description here

同樣,你也可以使用

plt.scatter(x[:5],x[:5],c='r',s=100) 
plt.scatter(x[5:],x[5:],c='b',s=100) 
+0

標誌是由一個大紅色或綠色cirlce覆蓋取決於我,如果條件。但是,我希望某些標記是紅色的,有些在同一個圖中是綠色的。你知道這可能嗎?我想也許我會把數值放在一個數組中,看看情節是否可以迭代這些數值。 – wot 2012-08-01 11:02:25

+0

檢查編輯。 – imsc 2012-08-01 12:03:27

+0

謝謝 - 看起來非常直截了當。所以我只用一個紅色標記和一些綠色標記。會告訴你這件事的進展的。 – wot 2012-08-01 13:02:42