OpenPyxl重叠数据标签(条形图)

2024-04-25 21:09:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用openpyxl(这个模块是在xlsxwriter上使用的,因为我需要访问和写入一个预先存在的工作簿)来创建多个条形图。我删除了网格线和X/Y轴,还添加了数据标签。我不知道如何使数据标签不重叠(不使标签垂直)。我是Python新手,所以任何关于格式化的提示都将不胜感激!谢谢!在

from openpyxl.chart import BarChart,Reference
from openpyxl.chart.label import DataLabelList
from openpyxl.chart.text import RichText
from openpyxl.drawing.text import CharacterProperties, ParagraphProperties, Paragraph
    axis = CharacterProperties(sz=550)
    rot = openpyxl.drawing.text.RichTextProperties(vert='eaVert')
    sheet = book['Graph Info']
valuesQT = Reference(sheet, min_col = 8, min_row = 3, max_col = 10, max_row = 11)
catsQT = Reference(sheet, min_col = 7, min_row = 4, max_col = 7, max_row = 11)
chartQT = BarChart()
#Formatting Code Start
chartQT.y_axis.majorGridlines = None
chartQT.x_axis.majorGridlines = None
chartQT.dLbls = DataLabelList()
chartQT.dLbls.showVal = 1
chartQT.dLblsPos='bestFit'
#chartQT.separator = True
chartQT.dLbls.txPr = RichText(p=[Paragraph(pPr=ParagraphProperties(defRPr=axis), endParaRPr=axis)], bodyPr=rot)
chartQT.y_axis.delete = True
chartQT.type = "col"
chartQT.style = 10
chartQT.add_data(valuesQT, titles_from_data=True)
chartQT.set_categories(catsQT)
chartQT.shape = 4
chartQT.height = 6
chartQT.width = 12
chartQT.title = "  Change "
sheet = book['Summary']
sheet.add_chart(chartQT, "A1")

writer.save()

Tags: textfromimportchartcol标签minmax