簡體   English   中英

更改散點圖 plot 標記厚度

[英]change scatter plot marker thickness

如何更改散點圖 plot plt.scatter()中標記線的粗細? markeredgewidthplt.plot()中的有效屬性; scatter是否有任何等效屬性?

例如,當您更改散點圖 plot 的大小時( marker = 'x' ),標記只會變大,但線條粗細不會改變。

我不是想改變大小,而是改變線條粗細!

您正在尋找 kwarg linewidths 例如:

import matplotlib.pyplot as plt
import numpy as np
x = y = np.arange(5)

fig,ax = plt.subplots(1)

ax.scatter(x,y,  s=100,marker='x',color='b',linewidths=1)
ax.scatter(x,y+1,s=100,marker='x',color='r',linewidths=2)
ax.scatter(x,y+2,s=100,marker='x',color='g',linewidths=3)

plt.show()

注意:在某些版本的matplotlib ,盡管手冊目前是這樣說的(2020 年 4 月),但似乎 kwarg 是linewidth ,而不是linewidths 這是matplotlib github 上的一個已知問題

在此處輸入圖片說明

Ubuntu-18.04和安裝matplotlib==3.2.0python-3.6.9 ,你只需要設置linewidth屬性(不是linewidths ):

import matplotlib.pyplot as plt
import numpy as np
x = y = np.arange(5)

fig,ax = plt.subplots(1)

ax.scatter(x,y,  s=100,marker='x',color='b',linewidth=1)
ax.scatter(x,y+1,s=100,marker='x',color='r',linewidth=2)
ax.scatter(x,y+2,s=100,marker='x',color='g',linewidth=6)

plt.show()

在此處輸入圖片說明

為簡潔起見,您也可以簡單地使用lw而不是linewidth

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM