创建图表
单击新建图表按钮时,将弹出“选择列”对话框(参见下方截图),其中指定了图表的三个基本数据选择参数。这些参数(如下所列)用于构建图表数据表格。
•源XPath:对话框打开时会自动输入一个XPath表达式。它将选择XML文档中的节点,该节点在访问“选择列”对话框时被选中。您可以使用键盘在对话框中对其进行编辑。包含索引复选框确定是否在XPath中使用谓词过滤器(有关详细信息,请参见源XPath)。源XPath选择的节点的子节点将可作为X轴和Y轴的数据列进行选择。“列搜索深度”组合框决定了要搜索多少个级别以返回可用于X轴和Y轴数据选择的节点。编辑源XPath后,您必须单击更新列以使更改生效,并刷新对话框中的X轴和Y轴列表。
•X轴:在此组合框中,您可以指定哪个节点将被用作X轴。此选择返回的序列将提供X轴上的标签。组合框中的自动枚举选项为X轴提供编号标签。请注意,为Y轴创建的XPath表达式也可以在X轴组合框中进行选择。
•Y轴:在此窗格中选中的条目将是节点,其数值将表示为Y轴的数值。全部清除和全部标记按钮分别取消选择所有项和选择Y轴窗格中的所有项。插入XPath按钮可以生成一个数据系列,该系列由于不是源XPath返回的节点的子节点而无法使用。为X轴选择的节点或XPath表达式对Y轴不可用并且显示为灰色。
如何创建图表数据表格
用于图表的数据由“选择列”对话框中的选择决定。我们将通过一个示例说明如何选择图表数据。由于XML文档(参见下方截图)包含三个Region元素,源XPath /Data/Region依次选择它们中的每一个。将每个Region元素作为上下文节点,然后生成数据列。对于源XPath选择的每个Region元素,请执行以下操作:
1.X轴表达式生成第一列(默认情况下,该列将是用于X轴标签的列)。
2.为每个系列(Y轴选择)生成一列。
为上方显示的“选择列”对话框生成的图表数据可以如下表所示进行可视化。
源XPath | X轴 | Y轴(系列轴) | |||||
Region[1] | @id | Year[1] | Year[2] | Year[3] | Year[4] | Year[5] | Year[6] |
Region[2] | @id | Year[1] | Year[2] | Year[3] | Year[4] | Year[5] | Year[6] |
Region[3] | @id | Year[1] | Year[2] | Year[3] | Year[4] | Year[5] | Year[6] |
从这些数据生成的条形图如下所示:
请注意以下几点:
•X轴上的刻度数由源XPath表达式返回的序列的大小决定(在本例中为三个)。
•源XPath返回的节点将是上下文节点,分别用于为X轴上的每个刻度生成两组数据:(i) X轴刻度标签(使用X轴选择),以及(ii) 为该刻度绘制的所有系列(使用Y轴选择来选择这些系列)。为X轴和Y轴输入的XPath表达式将在这些(源XPath)节点的上下文中进行评估。
•X轴选择返回的序列将是每个刻度的标签。如果标签的数量少于刻度,则某些刻度将保持未标记状态。
•每个系列(例如Year[1])对每个上下文节点进行一次评估。对于某些图表,例如饼图或单个条形图,仅能使用一个系列。
•图例是使用数据系列中条目的名称创建的。
这是用于上述示例的XML文档,供您参考。它名为YearlySales.xml并位于C:\Documents and Settings\<username>\My Documents\Altova\XMLSpy2023\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>
上方“选择列”对话框中显示的数据选择可以在“选择数据”对话框的表格中看到(参见下方截图)。可以通过单击图表输出窗口中的选择数据按钮来访问“选择数据”对话框。
有关“选择列”对话框中各个参数的更多详细信息,请参见以下部分:源XPath、X轴选择、Y轴选择以及图表数据。