首页 > 解决方案 > 在不覆盖 Excel 文件的情况下,使用 Python 中已有的 Excel 数据生成饼图

问题描述

我对 Pandas 和数据框架以及所有这些都是新手,我一直在尝试使用 Excel 文件中已经存在的数据生成一些图表(确切地说是饼图)。

我有一个包含大量数据的工作表。从该工作表中,我使用 openpyxl 生成一个新工作表,在其中添加一些公式以返回一些如下所示的值:

https://i.stack.imgur.com/ojM2R.png

这里的内容也是:

+----------------------------------------------------+
| User  |  Total  | Open  | Closed | Fixed |Rejected |
+----------------------------------------------------+
| James    23        7       16        7       12    |
| Michael  2         1       1         1       0     |
| Andreas  11        7       4         3       3     |
| Betty    6         2       4         1       3     |
+----------------------------------------------------+

我现在要做的是生成一个包含用户和其他每一列的饼图(一个饼图用户 X 总票证,一个带有用户 X 打开票证的饼图等等)

我试过 xlsxwritter 但它覆盖了我的整个文档并且没有设法让它工作。所有不会覆盖我的文档的 openpyxl 示例都包含随机生成的数据,而不是来自 Excel 文件的现有数据,我不知道如何用我想做的事情来实现这些方法。

你能帮我理解我应该做什么,也许怎么做?

我还想知道这是否是一种生成饼图的方法,比如公式。就像是

(=PIECHART(Sheet!B1:B5,Sheet!C1:C5)).

非常感谢,干杯,阿林

标签: pythonexcelpandaspie-chart

解决方案


国际大学联合会,

df.set_index('User').T.plot.pie(subplots=True, figsize=(15,10), layout=(2,2))
plt.tight_layout()

输出:

在此处输入图像描述

更新:

df.set_index('User').plot.pie(subplots=True, figsize=(15,10), layout=(2,3))
plt.tight_layout()

在此处输入图像描述


推荐阅读