饼图仅显示标签而不显示数据

饼图仅显示标签而不显示数据

问题描述:

我试图使用openpyxl创建饼图。图表正确显示标签,但没有派。另外我该如何改变图表的大小?我有大约28个标签,正如您在下面的图片中看到的,创建的图表窗口非常小以显示所有28个标签,我必须手动拉伸图表窗口。饼图仅显示标签而不显示数据

ws = wb.create_sheet(title="Tags Chart") 

for idx, val in enumerate(label_list_for_col_header, start=1): 
    ws.cell(row=idx , column=1).value = val 

for idx, val in enumerate(final_count, start=1): 
    ws.cell(row=idx , column=2).value = val 


pie = PieChart() 
labels = Reference(ws, min_col=1, min_row= 1, max_row=ws.max_row) 
data = Reference(ws, min_col=2, min_row= 1 , max_row=ws.max_row) 
pie.add_data(data, titles_from_data=False) 
pie.set_categories(labels) 
pie.title = "Bibliography by Tags" 
ws.add_chart(pie, "C1") 

+0

我刚发现问题,数据被存储在Excel中,因为不是数字。有问题的行是ws.cell(row = q,column = 2).value = str(z)。当我将str(z)更改为int(z)时,它工作正常。现在,我只需要如何调整图表区域的大小。 –

+0

[大小和位置](http://openpyxl.readthedocs.org/en/default/charts/chart_layout.html#size-and-position) – Lafexlos

+2

另外,如果你找到答案,你应该回答你自己的问题。 – Lafexlos

数据被存储为文本而不是数字。所以我改变了str(z)到int(z)

+1

您需要尽可能避免不必要的类型转换。 openpyxl将为你处理大部分的事情。您的代码将更容易阅读和维护。 –