我一直在敲这个脑袋,不知道是我瞎了还是没有答案。我创建了一个脚本来生成 3 个单独的报告。我为一个函数提供了 3 个单独的词典,并得到了 1 个看起来很棒的报告。但是,以下两份报告是在上一份报告的基础上得出的。有什么方法可以清除 Plotly 对象吗?下面是一张图片,其中包含我所指内容和代码的一些虚拟数据。
这是生成的第一份报告。 (您看不到任何重叠值或奇怪的显示。)
def createReport(myDict,name):
for key in myDict:
if key.__contains__("ER"):
indirectLabels.append(key)
indirectValues.append(round(myDict[key],2))
else:
directLabels.append(key)
directValues.append(round(myDict[key],2))
pieTotal = [round(sum(myDict.values()),2)]
myDict['pieTotal'] = pieTotal
myDict['indirectLabels'] = indirectLabels
myDict['indirectValues'] = indirectValues
myDict['directValues'] = directValues
myDict['directLabels'] = directLabels
fig = make_subplots(rows=2, cols=2, subplot_titles=('Total Payroll','Indirect Payroll Breakdown','Direct Payroll Breakdown'),
specs=[[{"type": "pie"}, {"type": "bar"}],
[{"colspan": 2}, None]])
fig.add_trace(go.Pie(
values=myDict['pieTotal'],
text=myDict['pieTotal'],
domain=dict(x=[0, 0.5])),
row=1, col=1)
fig.add_trace(go.Bar(
y=myDict['indirectValues'],
text=myDict['indirectValues'],
x=myDict['indirectLabels']),
row=1, col=2)
fig.add_trace(go.Bar(
y=myDict['directValues'],
text=myDict['directValues'],
x=myDict['directLabels']),
row=2, col=1)
fig.update_layout(
title_text="Payroll Data MTD: " + name
)
fig.show()
del fig
#fig.write_image(name+'_PayrollReport.pdf')
createReport(constructionDict,'Construction')
createReport(serviceDict,'Service')