簡體   English   中英

Matplotlib - 動態設置 Alpha 和顏色

[英]Matplotlib - set Alpha and color dynamically

我正在從 Pandas dataframe 在 Z1587383CF8C21507D06FB51 中繪制散點圖 plot 這是 dataframe 的樣子:

       X  Y    R
0      1  945  1236.334519
0      1  950   212.809352
0      1  950   290.663847
0      1  961   158.156856

這是我繪制 Dataframe 的方式:

ax1.scatter(myDF.X, myDF.Y, s=20, c='red', marker='s', alpha=0.5)

我的問題是我想根據R的值的高低來更改標記的繪制方式。

示例:如果R高於 1000(就像在我的示例的第一行中一樣), color應該是黃色而不是紅色, alpha應該是 0.8 而不是 0.5。 如果R低於 1000,則color應為藍色, alpha應為 0.4,依此類推。

有沒有辦法做到這一點,或者我只能使用不同的 dataframe 和不同的數據? 提前致謝!

您可以執行自定義 RGBA 顏色數組:

colors = [(1,1,0,0.8) if x>1000 else (1,0,0,0.4) for x in df.R]

plt.scatter(df.X,df.Y, c=colors)

Output:

在此處輸入圖像描述

暫無
暫無

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

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