是否有可能在折线图中禁用LineSeries组件的特定图例。
假设我们有以下代码:
<mx:Panel title="Line Chart">
<mx:LineChart id="myChart"
dataProvider="{expenses}"
showDataTips="true"
>
<mx:horizontalAxis>
<mx:CategoryAxis
dataProvider="{expenses}"
categoryField="Month"
/>
</mx:horizontalAxis>
<mx:series>
<mx:LineSeries
yField="Profit"
displayName="Profit"
/>
<mx:LineSeries
yField="Expenses"
displayName="Expenses"
/>
</mx:series>
</mx:LineChart>
<mx:Legend id="legend" dataProvider="{myChart}"/>
它将产生以下折线图:
这就是我想要的结果:
更新
请记住,我必须使用图例的DataProvider作为myChart,因为数据是动态构建的。此外,图例也是定制的。
答案 0 :(得分:0)
使用您的图表作为DataProvider,您可以创建单独的LegendItems
<mx:Legend>
<mx:LegendItem label="Profit" fill="#e48701">
</mx:LegendItem>
</mx:Legend>
edit2:试试这个
<mx:Legend dataProvider="{new ArrayCollection(myChart.legendData).getItemAt(0)}">
答案 1 :(得分:0)
得到解决方案,因为我有自定义图例我必须在更新折线图后设置数据提供者图例:
// Add listener event to the linechart component for when the legend update completes so it can filter lineseries on the legend's dataprovider in [onUpdateLegendComplete]
myChart.addEventListener(FlexEvent.UPDATE_COMPLETE, onUpdateLinechartComplete);
功能是:
protected function onUpdateLinechartComplete(e:FlexEvent):void
{
legend.dataProvider = myChart.legendData[0];
}
答案 2 :(得分:0)