[FlexChart for WinForms] 1つのチャート領域に複合グラフを表示する方法

文書番号 : 81891     文書種別 : 使用方法     登録日 : 2016/11/28     最終更新日 : 2016/11/28
文書を印刷する
対象製品
ComponentOne for WinForms
詳細
1つのFlexChartに様々なチャートタイプを持つ複数の系列を追加することで、複合グラフを表示することができます。複合グラフの数は、TrueChart for WinFormsと違って、2つに限定されることはありません。

以下に、1つのチャート領域にエリアグラフ、棒グラフ、折れ線グラフの3つの複合グラフを表示するサンプルコードをご紹介します。

◎複合グラフ


◎サンプルコード(VB)
    ' データの作成
    Dim dt As New DataTable("Test")
    dt.Columns.Add("X", GetType([String]))
    dt.Columns.Add("Y1", GetType(Int32))
    dt.Columns.Add("Y2", GetType(Int32))
    dt.Columns.Add("Y3", GetType(Int32))
    For i As Integer = 0 To 4
      dt.Rows.Add(String.Format("{0}", Asc(Chr(65 + i))), i + 1, i + 2, i + 3)
    Next
    dt.AcceptChanges()

    ' エリアグラフの作成
    Dim s1 As New Series()
    s1.ChartType = C1.Chart.ChartType.Area
    s1.DataSource = dt
    s1.Binding = "Y1"
    s1.BindingX = "X"

    ' 棒グラフの作成
    Dim s2 As New Series()
    s2.ChartType = C1.Chart.ChartType.Bar
    s2.DataSource = dt
    s2.Binding = "Y2"
    s2.BindingX = "X"

    ' 折れ線グラフの作成
    Dim s3 As New Series()
    s3.ChartType = C1.Chart.ChartType.LineSymbols
    s3.DataSource = dt
    s3.Binding = "Y3"
    s3.BindingX = "X"

    ' チャートの設定
    FlexChart1.Series.Clear()
    FlexChart1.Series.Add(s1)
    FlexChart1.Series.Add(s2)
    FlexChart1.Series.Add(s3)
    FlexChart1.Margin = New Padding(30)

◎サンプルコード(C#)
      // データの作成
      DataTable dt = new DataTable("Test");
      dt.Columns.Add("X", typeof(String));
      dt.Columns.Add("Y1", typeof(Int32));
      dt.Columns.Add("Y2", typeof(Int32));
      dt.Columns.Add("Y3", typeof(Int32));
      for(var i=0;i<5;i++)
      {
        dt.Rows.Add(string.Format("{0}", (char)(65 + i)), i + 1, i + 2, i + 3);
      }
      dt.AcceptChanges();

      // エリアグラフの作成
      Series s1 = new Series();
      s1.ChartType = C1.Chart.ChartType.Area;
      s1.DataSource = dt;
      s1.Binding = "Y1";
      s1.BindingX = "X";

      // 棒グラフの作成
      Series s2 = new Series();
      s2.ChartType = C1.Chart.ChartType.Bar;
      s2.DataSource = dt;
      s2.Binding = "Y2";
      s2.BindingX = "X";

      // 折れ線グラフの作成
      Series s3 = new Series();
      s3.ChartType = C1.Chart.ChartType.LineSymbols;
      s3.DataSource = dt;
      s3.Binding = "Y3";
      s3.BindingX = "X";

      // チャートの設定
      flexChart1.Series.Clear();
      flexChart1.Series.Add(s1);
      flexChart1.Series.Add(s2);
      flexChart1.Series.Add(s3);
      flexChart1.Margin = new Padding(30);