Wertegrafik erstellen Teil 1

Mit der Fähigkeit von Scribus automatisch Linien und Textrahmen zu zeichnen, kann ohne großen Aufwand eine "Rahmenstruktur" für eine Wertegrafik automatisch erstellt werden. Hier zeige ich ein paar Basis-Pythonbefehle um diese Aufgabe zu lösen. Diese Erstversion erzeugt drei Abfrage(Eingabe)-Boxen – die erste für den Grafiktitel, die zweite und dritte für die Beschriftung der X-und Y-Achse. Die Größenangaben im Skript gehen davon aus daß Punkt als Einheit im Seitenfomat eingestellt ist. (Allgemeine Einstellungen)

Skript: graphDE.py

 * 1) !/usr/bin/env python


 * 1) File: graph.py
 * 2) originally 2006.05.17
 * 3) Gregory Pittman
 * 4) creates basic graph with axis labels
 * 5) graphDE.py
 * 6) erzeugt eine Grafik mit Titel und Achsenbezeichnungen
 * 7) Übersetzung der Captions, Meldungstexte und Kommentare
 * 8) 17. Februar 2007 von Uchiki

import scribus

xorigin = 150     # x-Ursprung der Grafik yorigin = 450    # y-Ursprung der Grafik xaxis=400     #Länge der X-Achse yaxis=350     #Länge der Y-Achse color="Black" a = 1.5 # Linienstärke für die Achsen if scribus.haveDoc: title = scribus.valueDialog('Titel','Titel für Grafik eingeben') xlabel = scribus.valueDialog('Beschriftung X-Achse','Beschriftung X-Achse eingeben') ylabel = scribus.valueDialog('Beschriftung Y-Achse','Beschriftung Y-Achse eingeben') scribus.setRedraw(1) scribus.setUnit(0) d = scribus.createLine(xorigin,yorigin,xorigin+xaxis,yorigin) scribus.setLineWidth(a, d)   scribus.setLineColor(color, d)    scribus.setFillColor(color, d)    e = scribus.createLine(xorigin,yorigin,xorigin,yorigin-yaxis) scribus.setLineWidth(a, e)   scribus.setLineColor(color, e)    scribus.setFillColor(color, e)    T = scribus.createText(60, 45, 500, 60) scribus.setTextColor("Red", T)   scribus.setText(title, T)    scribus.setTextAlignment(1, T)    scribus.setFont("Times New Roman Bold", T)    scribus.setFontSize(28, T)    XL = scribus.createText(xorigin, yorigin + 20, xaxis, 40) scribus.setText(xlabel, XL) scribus.setTextAlignment(1, XL) scribus.setFont("Times New Roman Bold", XL) scribus.setFontSize(20, XL) YL = scribus.createText(xorigin - 60, yorigin, yaxis, 40) scribus.setText(ylabel, YL) scribus.setTextAlignment(1, YL) scribus.setFont("Times New Roman Bold", YL) scribus.setFontSize(20, YL) scribus.rotateObject(90,YL)
 * 1) Drei Abfrageboxen für Titel, Beschriftung X-Achse, Beschriftung Y-Achse
 * 1) Zuerst die X-Achse zeichnen
 * 1) Nun die Y-Achse
 * 1) Für Version 1.3.3.1 die obere Zeile auskommentieren und bei der unteren Zeile die Auskommentierung aufheben
 * 2)    e = scribus.createLine(xorigin,yorigin,xorigin+yaxis,yorigin)
 * 1) Für version 1.3.3.1 bei der nächste Zeile die Auskommentierung aufheben
 * 2)    scribus.rotateObject(90,e)
 * 3) Der Diagrammtitel in roter Schrift mit Rahmen
 * 1) für Windows den Font auf "Times New Roman Bold" gesetzt
 * 1) Beschriftung der X-Achse
 * 1) für Windows den Font auf "Times New Roman Bold" gesetzt
 * 1) Beschriftung der Y-Achse, um 90 Grad gedreht
 * 1) für Windows den Font auf "Times New Roman Bold" gesetzt

scribus.redrawAll