openpyxl - 能否从图表中删除边框?

时间:2016-05-02 17:42:32

标签: python python-2.7 charts openpyxl

使用openpyxl,插入我的工作表的图表上有一个边框。有没有办法通过styles.Style/styles.borders模块将图表的样式(饼图/条形)设置为没有边框,或者至少是一个薄的白色边框,以便它们可以打印无边框?

我在对象上看到的唯一选项是.style = <int>,它似乎并没有真正影响最终图形的设计。

2 个答案:

答案 0 :(得分:1)

您可以设置chat graphical_properties,代码为

chart.graphical_properties = GraphicalProperties(ln=LineProperties(noFill=True))

这会将线条样式应用于chartSpace。 在执行此操作之前,您应该修改openpyxl lib的源代码,文件是

Python27\Lib\site-packages\openpyxl\chart\_chart.py
    #cs = ChartSpace(chart=container)
    cs = ChartSpace(chart=container, spPr=self.graphical_properties)

效果很好。

答案 1 :(得分:0)

这不容易但应该可行。您将需要处理格式合适的示例图表的XML源,并查看需要设置或更改的特定变量。 openpyxl实现了完整的图表API,但遗憾的是这非常复杂。