使用python-pptx制作PPT百分比图表时数据被放大100倍的问题求助
解决python-pptx图表百分比显示放大100倍的问题
问题原因
Excel内置的百分比格式(0%)逻辑是将数值乘以100后添加%符号,所以当你输入24.93这类原始百分比数值时,会被计算为24.93×100=2493,最终显示2493%。
两种解决办法
方法一:调整输入数值
把原始数值除以100转换成小数形式(比如24.93→0.2493),再搭配百分比格式,就能正确显示目标百分比。修改代码中add_series的values参数:chart_data.add_series( str(moisSingleDate), values=(x/100 for x in result[moisSingleDate]), number_format='0.00%' )这里用
0.00%是为了保留两位小数,根据需求可以改成0%(显示整数百分比)。方法二:自定义数字格式
不依赖Excel内置的百分比计算逻辑,直接给数值追加%符号,格式字符串写成'0.00"'%"',这样数值不会被放大,直接以原始值加%的形式显示。修改代码:chart_data.add_series( str(moisSingleDate), values=result[moisSingleDate], number_format='0.00"'%"' )格式中的
0.00控制小数位数,可根据实际需求调整。
内容的提问来源于stack exchange,提问作者yunaie
相关产品推荐
相关产品推荐

