Altova XMLSpy 2024 Enterprise Edition

Diagrammbeispiel: Komplex

Zur Startseite Zurück Nach oben Weiter

Angenommen, Sie haben das folgende XML-Dokument. (Es hat den Namen YearlySales.xml und befindet sich im Ordner C:\Dokumente und Einstellungen\<Benutzer>\Eigene Dokumente\Altova\XMLSpy2024\Examples\Tutorial.)

 

<?xml version="1.0" encoding="UTF-8"?>

<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

      xsi:noNamespaceSchemaLocation="YearlySales.xsd">

 <Region id="Americas">

         <Year id="2005">30000</Year>

         <Year id="2006">90000</Year>

         <Year id="2007">120000</Year>

         <Year id="2008">180000</Year>

         <Year id="2009">140000</Year>

         <Year id="2010">100000</Year>

 </Region>

 <Region id="Europe">

         <Year id="2005">50000</Year>

         <Year id="2006">60000</Year>

         <Year id="2007">80000</Year>

         <Year id="2008">100000</Year>

         <Year id="2009">95000</Year>

         <Year id="2010">80000</Year>

 </Region>

 <Region id="Asia">

         <Year id="2005">10000</Year>

         <Year id="2006">25000</Year>

         <Year id="2007">70000</Year>

         <Year id="2008">110000</Year>

         <Year id="2009">125000</Year>

         <Year id="2010">150000</Year>

 </Region>

</Data>

 

 

Ziel ist die Erstellung eines Diagramms, in dem die Jahre auf der X-Achse dargestellt werden, um die regionalen Umsätze für jedes Jahr miteinander vergleichen zu können. Unser Diagramm sollte in etwa wie das unten gezeigte Balkendiagramm aussehen.

ChartYAxis02

Im Folgenden werden zwei Methoden zur Erstellung dieses Diagramms beschrieben. Anhand dieser beiden Methoden wird gezeigt, wie die verschiedenen Datenauswahlparameter miteinander kombiniert werden können, um das gewünschte Ergebnis zu erhalten.

 

Methode 1: Ändern der Achsenwerte

In der ersten Methode werden die Achsen, die im Dialogfeld "Spalten auswählen" ausgewählt wurden, im Dialogfeld "Daten auswählen" geändert. Sie müssen dazu nur sicherstellen, dass alle benötigten Daten im Dialogfeld "Daten auswählen" in der Diagrammdatentabelle zur Verfügung stehen.

 

1.Stellen Sie im Dialogfeld "Spalten auswählen" sicher, dass alle benötigten Nodes für die Auswahl der Daten für die X- und die Y-Achse zur Verfügung stehen. Beachten Sie, dass die Spaltensuchtiefe in der Abbildung unten auf 2 gesetzt wurde, damit auch die Year/@id Attribute ausgewählt werden.

ChartEx2ColSelect

2.Die Diagrammdatentabelle im Dialogfeld "Daten auswählen" (Abbildung unten), enthält die folgenden Spalten: Die erste Spalte ist die Auswahl für die X-Achse (dies ist die Auswahl "Automatisch enumeriert"). Die restlichen Spalten sind die Spalten für die Datenreihen- oder Y-Achse. Dabei handelt es sich um die Region/@id-Attribute, den Inhalt des Elements Year und die Year/@id-Attribute. Beachten Sie außerdem, (i) dass es nur drei Zeilen gibt, daher auch drei Skalenstriche auf der X-Achse; (Wir benötigen aber sechs Skalenstriche auf der X-Achse für die sechs Jahre); und (ii) dass es 13 Datenreihenspalten gbit.

ChartEx2DataSelect

3.Wir löschen im Bereich "Datenreihen" beliebige 10 der 13 Datenreihenzeilen und benennen die verbleibenden drei Datenreihen in Americas, Europe und Asia um, wie in der Abbildung oben gezeigt. In derselben Reihenfolge wie hier werden auch die Skalenstriche auf der X-Achse beschriftet.

4.Wählen Sie im Bereich "Datenreihen" die Datenreihe Americas aus. Klicken Sie im Bereich "Achsenwerte" in das Feld für die X-Achse, um den Wert ändern zu können. Klicken Sie anschließend in der Diagrammdatentabelle in die Zelle I1 und ziehen Sie den Mauszeiger auf die Zelle N1. Geben Sie im Textfeld für die Y-Achse entweder C1:H1 ein oder treffen Sie die Auswahl durch Markieren der Felder von C1 bis H1.

5.Wählen Sie für die Datenreihen "Europe" und "Asia" für die Y-Achse die Felder C2:H2 bzw. C3:H3 aus. Die Auswahl für die X-Achse kann dieselbe wie die für die Datenreihe Americas sein..

6.Klicken Sie auf OK. Das gewünschte Diagramm wird generiert.

 

Anmerkung:Die Anzahl der Skalenstriche für die X-Achse (die standardmäßig durch die Anzahl der Zeilen in der Diagrammdatentabelle definiert ist) wird von drei auf sechs erhöht, da die Anzahl der X-Achsenbeschriftungen sechs beträgt.

 

Methode 2: Generieren von Datenreihen mit Hilfe von XPath-Ausdrücken

In der zweiten Methode werden zur Generierung der Datenreihen XPath-Ausdrücke eingefügt. Dies ist notwendig, da der Quell-XPath (siehe Abbildung unten) nicht die untergeordneten Nodes hat, die für die Datenreihe benötigt werden. Allerdings erstellt der Quell-XPath-Ausdruck (durch Auswahl der Year Elemente des ersten Region Elements) sechs Skalenstriche auf der X-Achse. Damit mit Hilfe des Prädikats [1] das erste Region Element ausgewählt wird, muss das Kontrollkästchen "Indizes....inkludieren" aktiviert werden und Sie müssen auf die Schaltfläche Spalten aktualisieren klicken.

ChartEx1ColSelect

Im Dialogfeld "Spalten auswählen" hat das Region[1]/Year Element nur zwei untergeordnete Elemente: @id und text(). Das @id Attribut wird für die X-Achse ausgewählt und dient zur Generierung der richtigen X-Achsenbeschriftung für die sechs Skalenstriche der X-Achse. Die Diagrammdatentabelle würde folgendermaßen ausgewertet werden.

 

Source XPath

X-Axis

Y-Axis (Series columns)

Region[1]/Year[1]

@id

text()

XPath-1

XPath-2

Region[1]/Year[2]

@id

text()

XPath-1

XPath-2

Region[1]/Year[3]

@id

text()

XPath-1

XPath-2

Region[1]/Year[4]

@id

text()

XPath-1

XPath-2

Region[1]/Year[5]

@id

text()

XPath-1

XPath-2

Region[1]/Year[6]

@id

text()

XPath-1

XPath-2

 

Beachten Sie, dass der Kontext-Node der Reihe nach jedes der sechs Region[1]/Year Elemente ist. Der erste XPath-Ausdruck sucht nach dem aktuellen Wert des Year/@id Attributs und gibt anschließend das Region[2]/Year Element zurück, das denselben Year/@id Wert hat, wie der @id Wert des aktuellen Region[1]/Year Elements. Der zweite XPath-Ausdruck tut dasselbe für die Region[3]/Year Elemente. Auf diese Art wird bei jedem der sechs Jahre vorgegangen: Die drei Datenreihen für die Y-Achse sind die Children des jeweiligen Elements Year (Der text() Node gibt den Inhalt der Region[1]/Year Elemente zurück).

 

Die Diagrammdatentabelle im Dialogfeld "Daten auswählen" würde in etwa folgendermaßen aussehen.

ChartEx1DataSelect

Die Namen der Datenreihen im Dialogfeld "Daten auswählen" können (wie in der Abbildung unten) von XPath-Ausdrücken in aussagekräftige Legendentexte geändert werden. Für jede Datenreihe kann im Bereich "Achsenwerte" (durch Klicken auf das Textfeld für die Y-Achse und Auswahl der gewünschten Spalte in der Diagrammdatentabelle) die richtige Datenspalte zugewiesen werden.

ChartEx1DataSelectSerMod

Mit beiden oben gezeigten Methoden werden identische Diagramme erzeugt. Anhand der beiden Beispiele soll gezeigt werden, wie Datenauswahlparameter verwendet werden können.

 

© 2017-2023 Altova GmbH