calc diagramme barre modifier les dimensions du diagramme

Bonjour,

Je réalise une macro en LibreOffice Basic qui charge des données d’une base PostgreSQL et produit des diagrammes “barre”.

Je désire modifier les dimensions du diagramme, mais je n’y parviens pas avec l’objet “embedded” .
Chart = Charts.getByName(NomChart).embeddedObject
Chart.Diagram = Chart.createInstance(“com.sun.star.chart.BarDiagram”)

et ses propriétés

Chart.Area.Size.Height
Chart.Area.Size.Height

Comment dois-je procéder ?

Cordialement,

F. Gonthier

Bonjour

Si je comprends bien la question tu pourrais faire quelque chose comme :

sub PysModifDiagram


dim oDim as new com.sun.star.awt.Size

with oDim
	.Height = 5000  
	.Width = 10000
end with	

dim oClass as object,oFeuille as object
Dim oCharts As Object, oChart as object

oClass = thiscomponent		
oFeuille = oClass.sheets.getByName("Feuille1")
oChart = oFeuille.getCharts.getByIndex(0)
oChart.getEmbeddedObject.getDiagram.setSize(oDim)

end sub

Voir le classeur exemple : TailleGraphique.ods

Cordialement

Merci, mais les labels de l’axe X sont déformés. J’ai “résolu” cela en créant un deuxième diagramme à partir des dimensions et de la position du premier diagramme, après que les modifications de ce premier diagramme soient appliquées. De plus j’utilise uniquement des dimensions du type A quelque chose (…A3, A4, A5…) .