как изменить данные линейного графика на элементе сетки данныхclick в FLEX - PullRequest
0 голосов
/ 22 июня 2010

Я создал линейную диаграмму и щелкнул другую таблицу данных на основе элемента данных, и диаграмма должна быть изменена.Например, у меня есть таблица данных для акций с 3 акциями GOOGL, Yahoo и ADBE. При нажатии на GOOGL данные Google должны быть загружены в линейный график.

Пожалуйста, помогите мне ... !!!!

1 Ответ

0 голосов
/ 03 февраля 2012

Будет много разных способов достичь этой цели. Пример, который я привожу здесь, основан на событии itemClick в сетке данных, однако вы также можете выполнить то же самое, используя привязки.

<fx:Script>
    <![CDATA[
        import mx.charts.series.LineSeries;
        import mx.controls.dataGridClasses.DataGridItemRenderer;

        [Bindable]
        public var stocks:Array = 
            [
            {
                name: "goog", 
                values: 
                [
                { x:1, y:2 },
                    { x:2, y:8 },
                    { x:3, y:6 },
                    { x:4, y:4 }
                ]
            } ,
            {
                name: "ibm",
                values: 
                [
                { x:1, y:12 },
                    { x:2, y:4 },
                    { x:3, y:5 },
                    { x:4, y:6 }
                ]
            }
            ];


        protected function datagrid_itemClickHandler(event:ListEvent):void
        {
            var i:int;
            i = 2;
            var data:Object = (event.itemRenderer as DataGridItemRenderer).data;
            var line:LineSeries = new LineSeries();
            line.dataProvider = data.values;
            line.xField = "x";
            line.yField = "y";
            chart.series = [line];
        }
    ]]>
</fx:Script>
<s:layout>
    <s:VerticalLayout />
</s:layout>
<mx:LineChart id="chart" dataProvider="{stocks}">

</mx:LineChart>
<mx:DataGrid dataProvider="{stocks}"
             itemClick="datagrid_itemClickHandler(event)"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...