gpt4 book ai didi

python - 基于值的颜色填充?

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

我正在寻找一种在 Python/matplotlib/pandas 中为类似于此的图形创建颜色填充的方法(来源:http://www.scminc.com/resources/SCM_TIPSTRICKS_Petrel_Well_Sections_2013_July14.pdf):

enter image description here

它使用颜色图进行填充(图像左侧),并根据 x 轴上的特定间隔为其分配颜色。不幸的是,我还没有找到解决方案,而且由于我对 Python 总体来说还很陌生,所以我找不到解决方法。

非常感谢

最佳答案

您可以使用 imshow 将填充绘制为背景,然后对其进行剪辑。您可以使用 fill_betweenx 制作 mask 。

这是一个使用随机数据的例子:

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import PathPatch

# Make a random x and a y to go with it.
np.random.seed(26)
x = np.random.normal(0, 1, 200).cumsum()
y = np.arange(x.size)

# Set up the figure.
fig, ax = plt.subplots(figsize=(2, 10))

# Make the background 'image'.
im = ax.imshow(x.reshape(-1, 1),
aspect='auto',
origin='lower',
extent=[x.min(), x.max(), y.min(), y.max()]
)

# Draw the path.
paths = ax.fill_betweenx(y, x, x.min(),
facecolor='none',
lw=2,
edgecolor='b',
)

# Make the 'fill' mask and clip the background image with it.
patch = PathPatch(paths._paths[0], visible=False)
ax.add_artist(patch)
im.set_clip_path(patch)

# Finish up.
ax.invert_yaxis()
plt.show()

这会产生:

some random data filled with colour

关于python - 基于值的颜色填充?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36954416/

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