首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:如何以堆叠/分层的方式绘制一系列区域?

Python:如何以堆叠/分层的方式绘制一系列区域?
EN

Stack Overflow用户
提问于 2021-03-12 08:37:19
回答 2查看 73关注 0票数 1

我有几个不同的区域来测量给定条件的东西的二维空间事件。使用区域的颜色对条件进行编码。区域通常是多边形(尽管我已经绘制了圆),并且可以在其中有孔,如下所示:

有点像下面的画图:

如何使用Matplotlib或其他Python绘图包来实现这一点?

EN

回答 2

Stack Overflow用户

发布于 2021-03-12 08:50:29

你可以像这样用plot_surface做一些事情:

代码语言:javascript
复制
# sample data
data = np.zeros((20,24))
data[2:18, 2:18] = 1
data[4:16, 4:16] = 2
data[6:14,6:14] = 3
data[8:12,8:12] = 2

# 2D view
plt.imshow(data, cmap='Reds')

# mesh
X,Y=np.mgrid[0:data.shape[0], 0:data.shape[1]]


# plot
fig, ax = plt.subplots(subplot_kw={"projection": "3d"})

surf = ax.plot_surface(X, Y, data, cmap='hot',
                       linewidth=0, antialiased=False)

输出:

注意:你需要正确地分层标记你的数据。

票数 2
EN

Stack Overflow用户

发布于 2021-03-12 10:26:48

plotly库有一个绘制漏斗的函数,因此您可以使用该函数。下面是official reference中的图形,经过一些修改使其看起来像您想要的那样。

代码语言:javascript
复制
from plotly import graph_objects as go

x_sorted = sorted([39, 27.4, 20.6, 11, 2])
y_sorted = ["Website visit", "Downloads", "Potential customers", "Requested price", "invoice sent"]
fig = go.Figure(go.Funnel(
    y = y_sorted[::-1],
    x = x_sorted,
    marker={'color':['black','yellow','green','blue','red']})
               )
fig.show()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66592568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档