欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

【Python】Matplotlib利用楔形绘制圆环形饼图

发布时间:2025/3/15 python 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【Python】Matplotlib利用楔形绘制圆环形饼图 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Matplotlib编程实现

import matplotlib.pyplot as plt import numpy as np from matplotlib.patches import Rectangle, Shadow, Wedgefig, ax = plt.subplots(subplot_kw={"aspect":"equal"})font_style = {"family": "serif", "size": 12, "style": "italic", "weight": "black"}sample_data = [350, 150, 200, 300]total = sum(sample_data)percents = [i/float(total) for i in sample_data]angles = [360*i for i in percents]delta = 45wedge1 = Wedge((2, 2.5), 1, delta, delta+sum(angles[0:1]), facecolor="#00FFCC", edgecolor="white", width=0.3) wedge2 = Wedge((2, 2.5), 1, delta+sum(angles[0:1]), delta+sum(angles[0:2]), facecolor="#FF0000",edgecolor="white", width=0.3) wedge3 = Wedge((2, 2.5), 1, delta+sum(angles[0:2]), delta+sum(angles[0:3]), facecolor="#FFFF00",edgecolor="white", width=0.3) wedge4 = Wedge((2, 2.5), 1, delta+sum(angles[0:3]), delta, facecolor="#9900FF", edgecolor="white", width=0.3)rectangle1 = Rectangle((3.0, 0.3), 1.3, 1.3, facecolor="w", edgecolor="rosybrown") rectangle2 = Rectangle((3.2, 0.4), 0.3, 0.2, facecolor="#00FFCC") rectangle3 = Rectangle((3.2, 0.7), 0.3, 0.2, facecolor="#FF0000") rectangle4 = Rectangle((3.2, 1.0), 0.3, 0.2, facecolor="#FFFF00") rectangle5 = Rectangle((3.2, 1.3), 0.3, 0.2, facecolor="#9900FF")wedges = [wedge1, wedge2, wedge3, wedge4, rectangle1, rectangle2, rectangle3, rectangle4, rectangle5]for wedge in wedges:ax.add_patch(wedge)ax.text(3.6, 0.4, "%3.1f%%" % (percents[0]*100), **font_style) ax.text(3.6, 0.7, "%3.1f%%" % (percents[1]*100), **font_style) ax.text(3.6, 1.0, "%3.1f%%" % (percents[2]*100), **font_style) ax.text(3.6, 1.3, "%3.1f%%" % (percents[3]*100), **font_style)ax.axis([0, 4.5, 0, 4.5])plt.show()

成品图

总结

以上是生活随笔为你收集整理的【Python】Matplotlib利用楔形绘制圆环形饼图的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。