2015-02-09 22 views
26

使用pyplot.plot當我使用pyplot.plot生產散點圖,除去環形標誌的輪廓(而不是散射 - 我在與顏色映射困難)如何在matplotlib

我使用繪圖'o'標記圈出來,但圓圈總是有一個黑色的輪廓。

如何刪除輪廓或調整其顏色?

+0

API文檔是你的朋友:http://matplotlib.org/1.3.0/api/markers_api.html – jrd1 2015-02-09 05:13:38

+0

這對於做相反的事很有用 - 我可以很容易地得到一個沒有填充的輪廓。或者,我可以更改實心圓的填充顏色。從那個頁面(這是我來之前的地方),我不明白如何改變輪廓顏色。 – Toam 2015-02-09 05:21:01

回答

38

要刪除的標記的輪廓,並調整其顏色,使用markeredgewidth(又名mew),和markeredgecolor(又名mec)分別。

使用this as a guide

import numpy as np 
import matplotlib.pyplot as plt 

x = np.arange(0, 5, 0.1) 
y = np.sin(x) 

plt.plot(x, 
     y, 
     color='blue', 
     marker='o', 
     fillstyle='full', 
     markeredgecolor='red', 
     markeredgewidth=0.0) 

這將產生: plot result

你可能注意到了,即使標記邊緣顏色設置,因爲它的寬度設定爲零時不出現。

+0

正是我需要的!補充fyi設置顏色,必須使用:'color ='blue','not'm̶a̶r̶k̶e̶r̶c̶o̶l̶o̶r̶=̶'̶b̶l̶u̶e̶'̶' – uhoh 2016-06-10 07:31:27

+0

@uhoh:同意 - 您可以設置標記的顏色。我的示例並沒有手動設置該參數,因爲我已經說明儘管設置了,一旦markeredgewidth設置爲0(因爲這些參數獨立於「顏色」),'markeredgecolor'不會顯示。 – jrd1 2016-06-11 05:34:51

+0

是的:)我只是把它放在像我這樣的下一個人在這裏。 – uhoh 2016-06-11 09:59:48

4

pyplot API docs

markeredgecolor或MEC任何matplotlib顏色

實施例:

In [1]: import matplotlib.pyplot as plt 

In [2]: import numpy as np 

In [3]: x = np.linspace(0,1,11) 

In [4]: y = x * x 

In [5]: plt.plot(x,y,'o',color="red", ms=15, mec="red") 
Out[5]: [<matplotlib.lines.Line2D at 0x34e1cd0>] 

In [6]: plt.show() 

收率: Figure

是你在找什麼?