Flex/AIR チャートシリーズの LineSeries に常に値を表示する

Flex の Chart Series には ColumnSeries, PieSeries, LineSeries 等さまざまな種類のものがありますが、ColumnSeries, PieSeries などはlabelPositionプロパティに値を指定することにより、下の画像のように常に値を表示させることが可能です。

Labels for ColumnSeries, PieSeries

しかしながら、LineSeriesに関しては常に値を表示させることができません。
マウスオーバーの際に値を表示させる DataTip(ToolTip ※1) は使用可能です。

以前、自分も同じようなことを行いたく自作したLineSeriesDataLabelクラスがあったので少し変更して紹介します。

LineSeriesDataLabel_Original

           
LineSeries に常に値を表示する LineSeriesDataLabel
(右クリックからソースが見れます)

今後他のシリーズにも適応できるようにLineSeriesを直接継承せずに、ChartElementを継承しています。
LineSeriesDataLabelのseriesプロパティにLineSeriesのインスタンスを指定します。

各値を表示するラベル(UITextField)がチャートの表示領域からはみ出した場合には内側にずらす簡単な処理を入れていますが、複雑なポジショニングが必要な場合は、LineSeriesDataLabelクラスのlabelPositioningFunctionに独自のFunctionを設定してください。

その Function の引数、実装等は LineSeriesDataLabel#defaultLabelPositioningFunction を参考にしてください。

※1
あまり気にする必要はありませんが、DataTip と ToolTip には下記の明確な違いがあります。
「DataTip コントロールは ToolTip コントロールに似ていますが、マウスポインタから最も近いグラフのデータポイントを表す適切な値が表示されるという点で異なります。」
http://livedocs.adobe.com/flex/3_jp/langref/mx/charts/chartClasses/ChartBase.html