我正在使用XLSX writer生成饼图,一切都很顺利,只有一件事例外:我似乎找不到一种方法来控制数据标签(包含百分比值)中的文本。任何大于10的字体大小都会导致'%‘符号在数字下方换行(你可以在下面的图片中看到这一点)。我正在尝试生成许多图表,因此手动调整它们可能会耗费大量的时间。
文档建议可以在num_format中启用或禁用包装。对于单元格,这个属性是用一个'format‘对象设置的。但是,尽管数据标签文本具有num_format属性,但文档明确规定它必须使用字符串文字设置,并且不能接受格式对象。我不知道如何使用字符串文字格式防止字符串换行。
或者,我已经研究了扩展/减小数据标签的宽度/高度。但是,库中似乎也缺少此选项。
据我所知,其他属性似乎都没有提供避免文本换行的方法。
我的问题是,有没有我遗漏的解决方案?我将在下面留下我的一些输出和代码。
当前代码:
chart.add_series({
'categories' : '={}!B1:C1'.format(product_sheetname),
'values' : '={}!B2:C2'.format(product_sheetname),
'data_labels':{
'percentage':True,
'fill': {'color':'#363636'},
'font': {'name':'Arial (Body)', 'color':'white', 'size':16},
},
'points' : [
{'fill':{'color':'#4471d2'}},
{'fill':{'color':'#ff871c'}}
]
})
当前输出:
?
?
更新:根据下面的评论,一个快速修复方法是在一般情况下放大图表的大小。虽然这解决了换行问题,但它违背了使用更大字体的目的。
转载请注明出处:http://www.jubohx.com/article/20230504/2530550.html