2016-05-02 6 views
0

Mit openpyxl haben die in mein Arbeitsblatt eingefügten Diagramme einen Rand. Gibt es eine Möglichkeit, den Stil des Diagramms (Kreis/Leiste) entweder über das modes.Style/styles.borders-Modul so einzustellen, dass es keinen Rahmen oder zumindest einen dünnen weißen Rand hat, sodass sie randlos gedruckt werden?openpyxl - Möglichkeit, Rand von Diagrammen zu entfernen?

Die einzigen Optionen, die ich auf dem Objekt sehe, ist .style = <int>, die das Design der endgültigen Grafik nicht wirklich zu beeinflussen scheint.

Antwort

0

Dies ist nicht einfach, sollte aber möglich sein. Sie müssen die XML-Quelle eines geeignet formatierten Beispieldiagramms durcharbeiten und sehen, welche bestimmten Variablen eingestellt oder geändert werden müssen. openpyxl implementiert die komplette Chart-API, aber das ist leider sehr kompliziert.

+0

Ok, das gibt mir einen Ort zu starten. Ich lasse das für jetzt offen, für den Fall, dass ein anderer einen Beitrag hat und wird mir berichten, was ich für zukünftige Referenz finde. – disuse

+0

Ich denke, Sie möchten vielleicht alle Diskussionen auf die Mailingliste verschieben. –

0

können Sie Chat graphical_properties gesetzt, ist der Code

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

Dies wird den Linienstil ChartSpace- gelten. Bevor Sie dies tun, sollten Sie den Quellcode openpyxl lib modifizieren, ist die Datei

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

es gut funktioniert.