如何在饼图中使用Matplotlib改变颜色?

问题描述 投票:0回答:1

我试图让v1为蓝色,v2为橙色,v3为绿色,v4为浅灰色我试图通过文档,但不明白如何在饼图中定义颜色。谢谢你的帮助。

我正在使用几行代码生成一个饼图,其中vol1 = v1,v2,v3,v4。

plt.pie(vol1,labels = vollabels, autopct="%0.2f%%")
plt.legend(title="Normalized Volumes",loc="upper left", fontsize=14)
plt.axis
plt.show()  
python-3.x matplotlib visualization pie-chart
1个回答
0
投票

如果你想控制你的饼图包含哪些颜色,同时又不脱离matplotlib对颜色图的方便处理,你可能想看看文档中的例子。嵌套饼图. 提取的高光。

import matplotlib.pyplot as plt
import numpy as np

检索一个命名的颜色图,并 "手工挑选",使用一个编号的范围,合适的颜色。索引选取在 inner_colors 匹配内圈中更多数据点的色调。

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

然后,实际的绘图,包括一些自定义,都是直接的。

fig, ax = plt.subplots()

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

ax.pie(vals.sum(axis=1), radius=1, colors=outer_colors,
       wedgeprops=dict(width=size, edgecolor='w'))

ax.pie(vals.flatten(), radius=1-size, colors=inner_colors,
       wedgeprops=dict(width=size, edgecolor='w'))

额外的内容在链接的位置: 如何实现同样的结果使用 bar 图,但使用极坐标。这样一来,如果你的目标与极坐标中的默认值有出入,你就可以更灵活地进行精确设计。pie.

© www.soinside.com 2019 - 2024. All rights reserved.