[英]Scatter plot with same color for values below a threshold
我正在嘗試生成坐標(x,y)的散點 plot,其中顏色由介於(-3,1.5)之間的值決定。 我如何 plot 所有值小於 -1 且顏色相同的點不會從 plot 中全部省略。 我嘗試使用im.set_clim(-1,1.5)
,但它切斷了低於 -1 的值並且沒有 plot。
我該怎么做呢?
一個后續問題:
是否有可能具有順序顏色圖,其中 -1 以下的值全為紅色(無漸變),而 -1 以上的值具有不以紅色陰影開頭的順序顏色圖。
vmin
和vmax
指示哪個 c 值對應於顏色 map 的最低和最高 colors。 默認情況下,所有低於vmin
的值都獲得最低顏色('viridis' 映射為深紫色)。 您可以使用cmap.set_under(...)
更改此顏色。 extend=
參數將底色顯示為顏色欄中的三角形箭頭。
from matplotlib import pyplot as plt
import numpy as np
x = np.linspace(0, 15, 50)
y = - np.sin(x) / (x + 1) * 8
num_colors = 10
cmap = plt.get_cmap('viridis', num_colors)
cmap.set_under('red')
plt.scatter(x, y, c=y, cmap=cmap, vmin=-1, vmax=1.5)
plt.colorbar(extend='min')
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.