作成日: 2020/08/27 最終更新日: 2020/08/27
文書種別
使用方法
詳細
日付データ(Date型)をX値として用いた場合、BindingXプロパティに、このデータを設定したDataColumnの列名を指定するだけで、X軸ラベルに日付を表示させることができます。
このとき、X軸の表示範囲は、Date型の値をDouble型に変換(Date.ToOADateメソッドを使用)してAxisXのMin/Maxに代入することで指定可能です。
※ただし軸の目盛ラベルは、内部的に表示可能な状態を調べ自動的に表示されるため、表示範囲の指定内容によっては、AxisX.MajorUnitで指定したラベル間隔がそのまま反映されないことがあります。また、日付そのものを指定して、X軸範囲を指定したり目盛ラベルを直接表示させることはできません。

◎サンプルコード(VB)
このとき、X軸の表示範囲は、Date型の値をDouble型に変換(Date.ToOADateメソッドを使用)してAxisXのMin/Maxに代入することで指定可能です。
※ただし軸の目盛ラベルは、内部的に表示可能な状態を調べ自動的に表示されるため、表示範囲の指定内容によっては、AxisX.MajorUnitで指定したラベル間隔がそのまま反映されないことがあります。また、日付そのものを指定して、X軸範囲を指定したり目盛ラベルを直接表示させることはできません。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
' データテーブルの作成
Dim dt As New DataTable("Data")
' 列の追加
dt.Columns.Add("X", GetType(Integer))
dt.Columns.Add("Y", GetType(Double))
dt.Columns.Add("Date", GetType(Date))
' 行の追加
dt.Rows.Add(0, 2.5, "2020/09/3")
dt.Rows.Add(1, 2.0, "2020/09/22")
dt.Rows.Add(2, 1.8, "2020/10/3")
dt.Rows.Add(10, 3.9, "2020/10/11")
' データ系列の作成
Dim Series1 As New C1.Win.Chart.Series()
' データ系列のデータソースを設定
Series1.DataSource = dt
' データ系列のバインディングを設定
Series1.BindingX = "Date"
Series1.Binding = "Y"
' FlexChartのデータ系列コレクションにデータ系列を追加
FlexChart1.ChartType = C1.Chart.ChartType.Line
FlexChart1.Series.Clear()
FlexChart1.Series.Add(Series1)
' X軸の範囲、軸ラベル間隔、および書式の設定
FlexChart1.AxisX.Min = DateTime.Parse("2020/09/01").ToOADate()
FlexChart1.AxisX.Max = DateTime.Parse("2020/10/30").ToOADate()
FlexChart1.AxisX.MajorUnit = 10 '日数単位
FlexChart1.AxisX.Format = "yyyy/MM/dd"
' Y軸の範囲の設定
FlexChart1.AxisY.Min = 0
FlexChart1.AxisY.Max = 4
FlexChart1.AxisY.MajorUnit = 0.5
End Sub
◎サンプルコード(C#) private void Form1_Load(object sender, EventArgs e)
{
// データテーブルの作成
DataTable dt = new DataTable("Data");
// 列の追加
dt.Columns.Add("X", typeof(int));
dt.Columns.Add("Y", typeof(double));
dt.Columns.Add("Date", typeof(DateTime));
// 行の追加
dt.Rows.Add(0, 2.5, "2020/09/3");
dt.Rows.Add(1, 2, "2020/09/22");
dt.Rows.Add(2, 1.8, "2020/10/3");
dt.Rows.Add(10, 3.9, "2020/10/11");
// データ系列の作成
C1.Win.Chart.Series series1 = new C1.Win.Chart.Series();
// データ系列のデータソースを設定
series1.DataSource = dt;
// データ系列のバインディングを設定
series1.BindingX = "Date";
series1.Binding = "Y";
// flexChartのデータ系列コレクションにデータ系列を追加
flexChart1.ChartType = C1.Chart.ChartType.Line;
flexChart1.Series.Clear();
flexChart1.Series.Add(series1);
// X軸の範囲、軸ラベル間隔、および書式の設定
flexChart1.AxisX.Min = DateTime.Parse("2020/09/01").ToOADate();
flexChart1.AxisX.Max = DateTime.Parse("2020/10/30").ToOADate();
flexChart1.AxisX.MajorUnit = 10; //日数単位
flexChart1.AxisX.Format = "yyyy/MM/dd";
// Y軸の範囲の設定
flexChart1.AxisY.Min = 0;
flexChart1.AxisY.Max = 4;
flexChart1.AxisY.MajorUnit = 0.5;
}
関連情報
旧文書番号
85939