1
我一直在尋找如何在根據「第三方」列的值散點圖設置點的解決方案。我找不到任何現成的解決方案,因此我構建了自己的,我想分享它(也許有人會使用它):) 如果這不是一個地方發佈它,那麼我很抱歉並請刪除它。熊貓/ Python的/ Matplotlib散點圖標記的顏色取決於值從細胞
讓我們假設有一個數據幀「scatterData」如下:
lad2014_name Male Female Result
0 ABERDEEN CITY 95154 97421 -21.78
1 ABERDEENSHIRE 101875 105141 -13.10
2 ADUR 24047 26574 -16.16
3 ALLERDALE 38346 40192 -44.56
.
.
.
499 AMBER VALLEY 48720 51502 -3.56
我想繪製男性和女性在散點圖上,但是我也想顯示「結果」是否爲負或通過改變標記的顏色爲正。所以我這樣做:
def resultColour(z):
colour = '#e31a1c'
if z > 0:
colour = '#1f78b4'
return colour
#Plotting the scatter plot
plt.figure(figsize=(12,10))
for index, row in scatterData.iterrows():
x = row.Male
z = row.Result
y = row.Female
t = resultColour(z)
plt.scatter(x, y, c=t,s=85)
plt.xlabel('X axis lable',fontsize=15)
plt.ylabel('Y axis lable',fontsize=15)
plt.title('Plot title',fontsize=18)
plt.plot()
它產生散射如下
謝謝。這確實產生了與我的解決方案相同的結果,但更簡單和優雅。 – Sylvekk