Openpyxl改变图表的维度
Openpyxl change the dimension of a chart
在 openpyxl 2.2 中,我可以使用图表对象的绘图方法设置图表的维度:
chart = openpyxl.charts.BarChart()
chart.drawing.top = 100
chart.drawing.left = 100
chart.drawing.width = 600
chart.drawing.height = 600
在新版本(>2.3.3)中,这个方法好像不存在了。
我阅读了在线手册,发现如下:
"The chart can be positioned within its container. x and y adjust position, w and h adjust the size . The units are proportions of the container. A chart cannot be positioned outside of its container and the width and height are the dominant constraints: if x + w > 1, then x = 1 - w."
所以我想我必须先改变容器。我在手册中搜索了 class class openpyxl.chart.chartspace.ChartContainer 但我找不到设置其宽度和高度的方法。
如何显示具有固定自定义维度的图表?
图表代码已在 openpyxl 2.3 中完全重写。您现在可以直接在图表上设置以厘米为单位的近似宽度和高度:
chart = openpyxl.chart.BarChart()
chart.height = 10 # default is 7.5
chart.width = 20 # default is 15
所有图表测量在内部都依赖于操作系统的转换,因此系统之间可能会有很大差异。
在 openpyxl 2.2 中,我可以使用图表对象的绘图方法设置图表的维度:
chart = openpyxl.charts.BarChart()
chart.drawing.top = 100
chart.drawing.left = 100
chart.drawing.width = 600
chart.drawing.height = 600
在新版本(>2.3.3)中,这个方法好像不存在了。 我阅读了在线手册,发现如下:
"The chart can be positioned within its container. x and y adjust position, w and h adjust the size . The units are proportions of the container. A chart cannot be positioned outside of its container and the width and height are the dominant constraints: if x + w > 1, then x = 1 - w."
所以我想我必须先改变容器。我在手册中搜索了 class class openpyxl.chart.chartspace.ChartContainer 但我找不到设置其宽度和高度的方法。
如何显示具有固定自定义维度的图表?
图表代码已在 openpyxl 2.3 中完全重写。您现在可以直接在图表上设置以厘米为单位的近似宽度和高度:
chart = openpyxl.chart.BarChart()
chart.height = 10 # default is 7.5
chart.width = 20 # default is 15
所有图表测量在内部都依赖于操作系统的转换,因此系统之间可能会有很大差异。