gpt4 book ai didi

python - 在 matplotlib 中创建一个多级饼图,其中外圆是内圆的子集

转载 作者:行者123 更新时间:2023-12-04 03:23:34 25 4
gpt4 key购买 nike

我见过很多创建多级饼图的方法,其中内圆是外圆的子集,但是,我正在尝试在 matplotlib 中创建这样的图表。 enter image description here

如何使用 matplotlib 在 python 中创建如上图所示的图表?

最佳答案

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots()

size = 0.3
vals = np.array([[60., 32.], [37., 40.], [29., 10.]])

cmap = plt.get_cmap("tab20c")
outer_colors = cmap(np.arange(3)*4)
inner_colors = cmap([1, 2, 5, 6, 9, 10])

ax.pie(vals.sum(axis=1), radius=3-0.9, colors=outer_colors,
wedgeprops=dict(width=0.9, edgecolor='w'),labels=["Europe","North America","Scandiavia"],
pctdistance=1.1, labeldistance=0.65)

ax.pie(vals.flatten(), radius=3, colors=inner_colors,
wedgeprops=dict(width=0.9, edgecolor='w'),labels=["Germany","France","USA","Mexico","Finland","Sweden"],
pctdistance=1.1, labeldistance=0.85)

ax.set(aspect="equal", title='')
plt.show()

enter image description here

引用:https://matplotlib.org/stable/gallery/pie_and_polar_charts/nested_pie.html

您可以调整一些参数,如半径、宽度、颜色、标签距离。

关于python - 在 matplotlib 中创建一个多级饼图,其中外圆是内圆的子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68078180/

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