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

有点像下面的画图:

如何使用Matplotlib或其他Python绘图包来实现这一点?
发布于 2021-03-12 08:50:29
你可以像这样用plot_surface做一些事情:
# 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)输出:

注意:你需要正确地分层标记你的数据。
发布于 2021-03-12 10:26:48
plotly库有一个绘制漏斗的函数,因此您可以使用该函数。下面是official reference中的图形,经过一些修改使其看起来像您想要的那样。
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()

https://stackoverflow.com/questions/66592568
复制相似问题