Hi all,

I'm trying to use an XML document as the dataprovider for a chart and
not able to make it work. A test case follows...

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
                layout="horizontal" width="100%" height="100%">

  <mx:XMLListCollection id="statsXml">
    <mx:source>
      <mx:XMLList>
        <dailyStats>
           <run time="00:00">
            <campus name="Atlanta">56</campus>
            <campus name="Miami">71</campus>
            <campus name="Los Angeles">21</campus>
            <campus name="New York">25</campus>
            <campus name="Chicago">45</campus>
            <campus name="Orlando">34</campus>
            <campus name="San Francisco">28</campus>
          </run>
          <run time="01:00">
            <campus name="Atlanta">41</campus>
            <campus name="Miami">46</campus>
            <campus name="Los Angeles">24</campus>
            <campus name="New York">61</campus>
            <campus name="Chicago">51</campus>
            <campus name="Orlando">33</campus>
            <campus name="San Francisco">29</campus>
          </run>
          <run time="02:00">
            <campus name="Atlanta">67</campus>
            <campus name="Miami">32</campus>
            <campus name="Los Angeles">14</campus>
            <campus name="New York">47</campus>
            <campus name="Chicago">40</campus>
            <campus name="Orlando">30</campus>
            <campus name="San Francisco">24</campus>
          </run>
          <run time="03:00">
            <campus name="Atlanta">49</campus>
            <campus name="Miami">55</campus>
            <campus name="Los Angeles">33</campus>
            <campus name="New York">12</campus>
            <campus name="Chicago">62</campus>
            <campus name="Orlando">42</campus>
            <campus name="San Francisco">48</campus>
          </run>
        </dailyStats>
       </mx:XMLList>
     </mx:source>
   </mx:XMLListCollection>

  <mx:Stroke id = "s1" color="red" weight="2"/>

  <mx:LineChart id="lchart" height="100%" width="100%"
dataProvider="{statsXml.descendants('run')}">
    <mx:horizontalAxis>
      <mx:CategoryAxis categoryField="@time"/>
    </mx:horizontalAxis>
    <mx:verticalAxis>
      <mx:LinearAxis title="Minutes"/>
    </mx:verticalAxis>
    <mx:series>
      <mx:LineSeries yField="campus.(@name=='Orlando')"
           displayName="Orlando" lineStroke="{s1}"/>
    </mx:series>
  </mx:LineChart>

  <mx:Legend dataProvider="{lchart}"/>

</mx:Application>

Using 'dataProvider="{statsXml}"', I wasn't getting anything. Adding
the '.descendants('run)' I at least got the time indicators on the
horizontal axis. But nothing I've tried actually draws the line.

Of course the ultimate goal is to have a line for each campus. But I'd
like to see it work with at least one... ;-)

thanks for any help,

Greg

Reply via email to