作成日: 2023/11/30 最終更新日: 2023/11/30
文書種別
使用方法
詳細
2次元配列データをそのまま用いて、チャートにデータを設定することはできません。
対応策として、KeyValuePair構造体を利用し、データをキーと値に加工してチャートのDataSourceに設定する方法が考えられます。この場合、Bindingプロパティを"Value"に、BindingXを"Key"に設定します。
以下に、Double型の2次元配列を使った場合のサンプルコードを記載します。

◎サンプルコード(VB)
対応策として、KeyValuePair構造体を利用し、データをキーと値に加工してチャートのDataSourceに設定する方法が考えられます。この場合、Bindingプロパティを"Value"に、BindingXを"Key"に設定します。
以下に、Double型の2次元配列を使った場合のサンプルコードを記載します。
◎サンプルコード(VB)
Imports C1.Chart
Imports C1.Win.Chart
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' データの作成
Dim x = {1.0R, 2.0R, 3.0R, 4.0R, 5.0R}
Dim y = {10.0R, 20.0R, 15.0R, 25.0R, 20.0R}
' データの加工
Dim data = New KeyValuePair(Of Double, Double)(x.Length - 1) {}
For i = 0 To x.Length - 1
data(i) = New KeyValuePair(Of Double, Double)(x(i), y(i))
Next
' シリーズの作成
Dim series = New Series With {
.Name = "Series1",
.Binding = "Value",
.BindingX = "Key",
.ChartType = ChartType.LineSymbols
}
' チャートの設定
FlexChart1.DataSource = data
FlexChart1.Series.Clear()
FlexChart1.Series.Add(series)
'CAS-136022-Y3D0S3:判例の非表示
FlexChart1.Legend.Position = Position.None
End Sub
End Class
◎サンプルコード(C#)
using C1.Chart;
using C1.Win.Chart;
namespace prj_C1FlexChart
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// データの作成
var x = new[] { 1d, 2d, 3d, 4d, 5d };
var y = new[] { 10d, 20d, 15d, 25d, 20d };
// データの加工
var data = new KeyValuePair<double,double>[x.Length];
for(var i = 0; i < x.Length; i++)
{
data[i] = new KeyValuePair<double, double>(x[i], y[i]);
}
// シリーズの作成
var series = new Series
{
Name = "Series1",
Binding = "Value",
BindingX = "Key",
ChartType = ChartType.LineSymbols
};
// チャートの設定
flexChart1.DataSource = data;
flexChart1.Series.Clear();
flexChart1.Series.Add(series);
//CAS-136022-Y3D0S3:判例の非表示
flexChart1.Legend.Position = Position.None;
}
}
}