簡體   English   中英

對於低於閾值的值,使用相同顏色散布 plot

[英]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 以上的值具有不以紅色陰影開頭的順序顏色圖。

vminvmax指示哪個 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.

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