Как указать цвет клина круговой диаграммы в openpyxl? - PullRequest
0 голосов
/ 21 декабря 2018

Я не вижу примеров в документации openpyxl, как указать цвет клина круговой диаграммы.

Я нашел это в документации: https://openpyxl.readthedocs.io/en/stable/api/openpyxl.drawing.fill.html?highlight=openpyxl.drawing.fill#openpyxl.drawing.fill.SolidColorFillProperties

И этот пример, который делаетиспользование чего-то похожего: https://openpyxl.readthedocs.io/en/latest/charts/pattern.html?highlight=ColorChoice

1 Ответ

0 голосов
/ 21 декабря 2018

Решение:

from openpyxl import Workbook
from openpyxl.chart import PieChart, Reference
from openpyxl.chart.marker import DataPoint

wb = Workbook()
ws = wb.active

rows = [
    ("Sample",),
    (1,),
    (2,),
    (3,),
    (2,),
    (3,),
    (3,),
    (1,),
    (2,),
]

for r in rows:
    ws.append(r)

p = PieChart()
data = Reference(ws, min_col=1, min_row=1, max_row=8)
p.add_data(data, titles_from_data=True)
p.title = "Sample Chart"

# try to set color blue (0000FF) for the 2nd wedge (idx=1) in the series
series = p.series[0]
pt = DataPoint(idx=1)
pt.graphicalProperties.solidFill = "0000FF"
series.dPt.append(pt)

ws.add_chart(p, "C1")
wb.save("pattern.xlsx")
...