gpt4 book ai didi

python - 如何使用 matplotlib scatter() 调整每个点的 alpha?

转载 作者:太空宇宙 更新时间:2023-11-03 20:06:27 26 4
gpt4 key购买 nike

例如,我想提供一个 alpha 值数组,其长度与我想要用散点图绘制的点数相同。

我看到有一种解决方法,可以手动计算 rbg 颜色值并使用颜色图,有没有更简单的方法?

如果这是唯一的方法,我如何抽象该函数,以便我可以只提供元素数、颜色和透明度值来获取我需要的颜色图?我不知道我可能使用什么颜色,并且透明度权重会发生变化,所以我想要更通用的东西。

最佳答案

您可以使用matplotlib.colors.to_rgb(a)

import matplotlib.pyplot as plt
from matplotlib.colors import to_rgb, to_rgba
import numpy as np

def scatter(x, y, color, alpha_arr, **kwarg):
r, g, b = to_rgb(color)
# r, g, b, _ = to_rgba(color)
color = [(r, g, b, alpha) for alpha in alpha_arr]
plt.scatter(x, y, c=color, **kwarg)

N = 500
x = np.random.rand(N)
y = np.random.rand(N)
alpha_arr = x * y
scatter(x, y, 'red', alpha_arr, s=10) # ok
scatter(x, y, '#efefef', alpha_arr, s=10) # ok

引用。

关于python - 如何使用 matplotlib scatter() 调整每个点的 alpha?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58945035/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com