Infografiken anlegen

Von Jürgen Schell. | 9 April, 2008 - 09:19
Beschreibung:

Infografiken haben sehr viele Eigenschaften, die meisten sind aber einfach zu handhaben. Als Einstieg zeigen wir ein Script, dass ein komplettes Beispiel-Dokument aufbaut. Zunächst wird ein Rechenblatt auf einer Seite mit ein paar Werten angelegt. (Die Werte werden in den Rechenblattbereich einfach als Text eingetragen. Dies entspricht einer manuellen Eingabe einschließlich der normalen Typerkennung. Man könnte auch den Bereich A2:B6 in einem Durchlauf setzen, indem man abwechselnd Tabulatoren und returns zwischen den Zahlen einfügt. Die Konstruktion hier wurde gewählt, damit Kopieren / Einsetzen aus dem Web-Browser funktioniert.)

Dann wird eine Infografik erzeugt, in einem Rechteck platziert und ihre Eigenschaften gesetzt:

-----------------------------
set Werte1 to "4
6
3
8"
set Werte2 to "2
3
9
3"

tell application "RagTime 6.5"
     set dasdokument to (make new document with properties {component types:layout} at end)
     tell dasdokument
          delete every drawing object of page 1 of layout 1
          set dieTabelle to (make new table at end)
          tell dieTabelle
               set range "A2:A6" to Werte1
               set range "B2:B6" to Werte2
          end tell
          make new rectangle at beginning of page 1 of layout 1 with data {100, 50, 400, 250}
          set contents of rectangle 1 of page 1 of layout 1 to dieTabelle
          make new rectangle at beginning of page 1 of layout 1 with data {100, 300, 400, 800}
          -- Damit ist die Seite aufgebaut und der Code für die Grafik kann beginnen
          set dieGrafik to (make new graph at end)
          set contents of rectangle 1 of page 1 of layout 1 to dieGrafik
          set chart type of dieGrafik to xy graph
          set neueserie to (make new series at end of dieGrafik)
          set formula of x value list of neueserie to name of dieTabelle & "!A2:A7"
          set formula of y value list of neueserie to name of dieTabelle & "!B2:B7"
     end tell
end tell
-----------------------------

Der einzige interessante Trick hier ist, wie die Formeln für die Datenreihe aufgebaut wird. Die Formel wird als Text übergeben. Sie enthält den Namen des Rechenblatts, dann ein Semikolen und abschließend den Bereich. Der Teil ab dem Semikolen ist hier als Textkonstante fest eingegeben. Der Name davor wird über “name of dieTabelle� berechnet.