/// <summary>
/// FlexChartを初期化するメソッド
/// </summary
protected void SetupChart()
{
// データを取得します
var data = GetQuotes();
// 最低/最高価格を取得します
var minPrice = data.Min((q) => q.Low);
var maxPrice = data.Max((q) => q.High);
// データを並べ替えます
var orderedVolume = data.OrderBy((q) => q.Volume);
flexChart1.Series.Clear();
// FlexChartのヘッダーを設定します
this.flexChart1.Header.Content = "Daily Price Movement";
// データをFlexChartに渡します
this.flexChart1.DataSource = data;
// チャートのX軸を「日付」にバインドして、日付が横軸に表示されるようにします
this.flexChart1.BindingX = "Date";
// FlexChartを「Volume」にバインドして、市場シェアが縦軸に表示されるようにします
var _sVolume = new Series
{
Name = "Volume",
Binding = "Volume",
AxisY = new Axis { Position = Position.Left, Format = "#,##0,,M" },
};
this.flexChart1.Series.Add(_sVolume);
this.flexChart1.AxisY.Min = 2 * minPrice - maxPrice;
// 凡例の位置を設定します
this.flexChart1.Legend.Position = Position.Top;
// 範囲セレクタチャートの設定
// RangeSelectionチャートのChartTypeを設定します
_fcChartRangeSelector.ChartType = ChartType.Line;
// データをRangeSelectionチャートに渡します
_fcChartRangeSelector.DataSource = this.flexChart1.DataSource;
// チャートのX軸を「日付」にバインドして、日付が横軸に表示されるようにします
_fcChartRangeSelector.BindingX = "Date";
// 新しい系列を追加して、「High」フィールドにバインドします
_fcChartRangeSelector.Series.Add(new Series { Binding = "High" });
_fcChartRangeSelector.Rendered += (s, e) =>
{
SetupRangeSelector();
};
''' <summary>
''' FlexChartを初期化するメソッド
''' </summary
Protected Sub SetupChart()
' データを取得します
Dim data As List(Of Quote) = GetQuotes()
' 最低/最高価格を取得します
Dim minPrice As Double = data.Min(Function(q) q.Low)
Dim maxPrice As Double = data.Max(Function(q) q.High)
' データを並べ替えます
Dim orderedVolume As IOrderedEnumerable(Of Quote) = data.OrderBy(Function(q) q.Volume)
flexChart1.Series.Clear()
' FlexChartのヘッダーを設定します
Me.flexChart1.Header.Content = "Daily Price Movement"
' データをFlexChartに渡します
Me.flexChart1.DataSource = data
' チャートのX軸を「日付」にバインドして、日付が横軸に表示されるようにします
Me.flexChart1.BindingX = "Date"
' FlexChartを「Volume」にバインドして、市場シェアが縦軸に表示されるようにします
Dim _sVolume As Series = New Series() With {
.Name = "Volume",
.Binding = "Volume",
.AxisY = New Axis() With {
.Position = Position.Left,
.Format = "#,##0,,M"
}
}
Me.flexChart1.Series.Add(_sVolume)
Me.flexChart1.AxisY.Min = 2 * minPrice - maxPrice
' 凡例の位置を設定します
Me.flexChart1.Legend.Position = Position.Top
' 範囲セレクタチャートの設定
' RangeSelectionチャートのChartTypeを設定します
_fcChartRangeSelector.ChartType = ChartType.Line
' データをRangeSelectionチャートに渡します
_fcChartRangeSelector.DataSource = Me.flexChart1.DataSource
' チャートのX軸を「日付」にバインドして、日付が横軸に表示されるようにします
_fcChartRangeSelector.BindingX = "Date"
' 新しい系列を追加して、「High」フィールドにバインドします
_fcChartRangeSelector.Series.Add(New Series() With {
.Binding = "High"
})
AddHandler _fcChartRangeSelector.Rendered, Function(s, e)
SetupRangeSelector()
End Function