那里
我正在尝试使用 openpyxl 来处理 Excel 数据。将图片绘制出来并导出它们就可以了。但是 x_axis 不够漂亮,我想旋转它,但在文档中没有找到解决方案。
这是使用 XlsxWriter 的解决方案:solution.
我的代码是这样的:
from openpyxl import load_workbook
from openpyxl.chart import (
ScatterChart,
LineChart,
Reference,
Series,
shapes,
text,
axis)
wb = load_workbook('text.xlsx')
ws = wb.active
c5 = ScatterChart()
x = Reference(ws, min_col=1, min_row=2, max_row=ws.max_row)
for i in range(3,5):
values = Reference(ws, min_col=i, min_row=1, max_row=ws.max_row)
series = Series(values, xvalues=x, title_from_data=True)
# series.marker.symbol = 'triangle'
c5.series.append(series)
c5.x_axis.number_format='yyyy/mm/dd'
c5.x_axis.title = 'Date'
谢谢大家!
我的Python版本是3.5.2,openpyxl是2.4.0
----------------新代码旋转但使文件损坏并需要修复
from openpyxl.chart.text import RichText
from openpyxl.drawing.text import RichTextProperties
c5.x_axis.txPr = RichText(bodyPr=RichTextProperties(rot="-2700000"))
------------- Excel xml 中的代码
<valAx>
some codes here
<txPr>
<a:bodyPr rot="-1350000" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
</txPr>
<crossAx val="20"/>
</valAx>
上面的代码会破坏文件,直到我将它们添加到其中
<txPr>
<a:bodyPr rot="-1350000" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
<a:p xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
<a:pPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
<a:defRPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
</a:pPr>
<a:endParaRPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" lang="zh-CN"/>
</a:p>
</txPr>