gpt4 book ai didi

python - 使用 matplotlib 中的大小缩放误差条透明度

转载 作者:行者123 更新时间:2023-11-30 23:02:41 26 4
gpt4 key购买 nike

我有一个相当困惑的图,因此,为了整理它,我想通过减少它们的 alpha 值来使那些具有较大误差线的点变得不那么重要。最好,我想根据误差条大小将连续比例​​的 alpha 值(如颜色图)映射到每个点及其误差条 - 我不太确定执行此操作的最佳/有效方法是什么.

最佳答案

您当然可以设置误差条的 alpha,但我认为您需要单独绘制每个误差条,因为 Matplotlib 不会将垂直线和标题线的不透明度(或颜色)设置为序列(据我所知)。

如果您希望标记的不透明度与误差条相匹配,那么基于某种标准化构建颜色序列可能会更容易:

import numpy as np
import matplotlib.pyplot as plt

n = 20
x = np.linspace(1, 10, n)
y = x - x**2
minerr = 2
yerr = abs(np.random.randn(n) * 15) + minerr
maxerr = max(yerr)
err_range = maxerr - minerr

alphas = [1 - (err-minerr)/(err_range) for err in yerr]
colors = np.asarray([(1,0,0, alpha) for alpha in alphas])

plt.scatter(x,y, c=colors, edgecolors=colors)
for pos, ypt, err, color in zip(x, y, yerr, colors):
plotline, caplines, (barlinecols,) = plt.errorbar(pos, ypt, err, lw=2, color=color, capsize=5, capthick=2)

plt.xlim(0,11)
plt.show()

enter image description here

但是,您可能需要考虑您创建的效果是否可能会歪曲您的数据(即,通过仅强调误差线较小的点来使其看起来比实际更准确)。

关于python - 使用 matplotlib 中的大小缩放误差条透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34395251/

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