作成日: 2020/08/26 最終更新日: 2020/08/26
文書種別
使用方法
詳細
本コンポーネントには、チャートタイプとして、同心円状のグラフは提供されておりません。
代替案として、バブルチャートに複数のシリーズを追加し、それぞれのX値/Y値を0(原点)に設定し、バブルのサイズを円の半径として指定することで、同心円を描画させる方法が考えられます。
なお、バブルチャートでは、Seriesのコレクションに追加された順に描画されるため、半径の大きな円から順にコレクションに追加しないと、小さなバブルが大きなバブルの背面に隠れてしまうことにご留意ください。
以下に、3つの同心円を描画するサンプルコードを記載します。

◎サンプルコード(VB)
代替案として、バブルチャートに複数のシリーズを追加し、それぞれのX値/Y値を0(原点)に設定し、バブルのサイズを円の半径として指定することで、同心円を描画させる方法が考えられます。
なお、バブルチャートでは、Seriesのコレクションに追加された順に描画されるため、半径の大きな円から順にコレクションに追加しないと、小さなバブルが大きなバブルの背面に隠れてしまうことにご留意ください。
以下に、3つの同心円を描画するサンプルコードを記載します。

◎サンプルコード(VB)
Imports C1.Win.Chart
Imports C1.Chart
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' テストデータの作成
Dim dt As DataTable = New DataTable
dt.Columns.Add("年月", GetType(System.String))
dt.Columns.Add("データ01", GetType(System.Int32))
dt.Columns.Add("データ02", GetType(System.Int32))
dt.Columns.Add("データ03", GetType(System.Int32))
dt.Columns.Add("X", GetType(System.Int32))
dt.Columns.Add("Y", GetType(System.Int32))
dt.Rows.Add("2020t1", 100, 350, 200, 0, 0)
dt.AcceptChanges()
' 対象データの指定
Dim dv As DataView = dt.DefaultView
dv.RowFilter = "年月='2020年1月'"
' シリーズの作成
Dim series1 As Series = New Series
series1.Name = "データ01"
series1.BindingX = "X"
series1.Binding = "Y,データ01"
series1.Style.FillColor = Color.DarkGreen
Dim series2 As Series = New Series
series2.Name = "データ02"
series2.BindingX = "X"
series2.Binding = "Y,データ02"
series2.Style.FillColor = Color.LightGreen
Dim series3 As Series = New Series
series3.Name = "データ03"
series3.BindingX = "X"
series3.Binding = "Y,データ03"
series3.Style.FillColor = Color.Green
' バブルサイズの大きなシリーズから順に追加
FlexChart1.Series.Clear()
FlexChart1.Series.Add(series2) ' バブルサイズ=350
FlexChart1.Series.Add(series3) ' バブルサイズ=200
FlexChart1.Series.Add(series1) ' バブルサイズ=100
' flexChartのデータソースの設定
FlexChart1.DataSource = dv
FlexChart1.BackColor = Color.White
FlexChart1.ChartType = ChartType.Bubble
FlexChart1.Header.Content = "同心円グラフ"
FlexChart1.Legend.Position = Position.Bottom
' バブルの最小/最大サイズの指定
FlexChart1.Options.BubbleMinSize = 50
FlexChart1.Options.BubbleMaxSize = 150
' X軸の設定
FlexChart1.AxisX.Labels = False
FlexChart1.AxisX.Origin = 0
FlexChart1.AxisX.Style.StrokeWidth = 1
FlexChart1.AxisX.Style.StrokeColor = Color.Silver
FlexChart1.AxisX.MajorUnit = 0.1
FlexChart1.AxisX.MinorUnit = 0.1
FlexChart1.AxisX.MajorTickMarks = TickMark.Cross
' Y軸の設定
FlexChart1.AxisY.Labels = False
FlexChart1.AxisY.Origin = 0
FlexChart1.AxisY.Style.StrokeWidth = 1
FlexChart1.AxisY.Style.StrokeColor = Color.Silver
FlexChart1.AxisY.MajorUnit = 0.1
FlexChart1.AxisY.MajorTickMarks = TickMark.Cross
FlexChart1.AxisY.AxisLine = True
FlexChart1.AxisY.MajorGrid = False
FlexChart1.AxisY.MinorGrid = False
End Sub
End Class
◎サンプルコード(C#)using C1.Chart;
using C1.Win.Chart;
namespace _WinApp01
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// テストデータの作成
DataTable dt = new DataTable();
dt.Columns.Add("年月", typeof(string));
dt.Columns.Add("データ01", typeof(int));
dt.Columns.Add("データ02", typeof(int));
dt.Columns.Add("データ03", typeof(int));
dt.Columns.Add("X", typeof(int));
dt.Columns.Add("Y", typeof(int));
dt.Rows.Add("2020年1月", 100, 350, 200, 0, 0 );
dt.AcceptChanges();
// 対象データの指定
DataView dv = dt.DefaultView;
dv.RowFilter = "年月='2020年1月'";
// シリーズの作成
Series series1 = new Series();
series1.Name = "データ01";
series1.BindingX = "X";
series1.Binding = "Y,データ01";
series1.Style.FillColor = Color.DarkGreen;
Series series2 = new Series();
series2.Name = "データ02";
series2.BindingX = "X";
series2.Binding = "Y,データ02";
series2.Style.FillColor = Color.LightGreen;
Series series3 = new Series();
series3.Name = "データ03";
series3.BindingX = "X";
series3.Binding = "Y,データ03";
series3.Style.FillColor = Color.Green;
// バブルサイズの大きなシリーズから順に追加
flexChart1.Series.Clear();
flexChart1.Series.Add(series2); // バブルサイズ=350
flexChart1.Series.Add(series3); // バブルサイズ=200
flexChart1.Series.Add(series1); // バブルサイズ=100
// flexChartのデータソースの設定
flexChart1.DataSource = dv;
flexChart1.BackColor = Color.White;
flexChart1.ChartType = ChartType.Bubble;
flexChart1.Header.Content = "同心円グラフ";
flexChart1.Legend.Position = Position.Bottom;
// バブルの最小/最大サイズの指定
flexChart1.Options.BubbleMinSize = 50;
flexChart1.Options.BubbleMaxSize = 150;
// X軸の設定
flexChart1.AxisX.Labels = false;
flexChart1.AxisX.Origin = 0;
flexChart1.AxisX.Style.StrokeWidth = 1;
flexChart1.AxisX.Style.StrokeColor = Color.Silver;
flexChart1.AxisX.MajorUnit = 0.1;
flexChart1.AxisX.MinorUnit = 0.1;
flexChart1.AxisX.MajorTickMarks = TickMark.Cross;
// Y軸の設定
flexChart1.AxisY.Labels = false;
flexChart1.AxisY.Origin = 0;
flexChart1.AxisY.Style.StrokeWidth = 1;
flexChart1.AxisY.Style.StrokeColor = Color.Silver;
flexChart1.AxisY.MajorUnit = 0.1;
flexChart1.AxisY.MajorTickMarks = TickMark.Cross;
flexChart1.AxisY.AxisLine = true;
flexChart1.AxisY.MajorGrid = false;
flexChart1.AxisY.MinorGrid = false;
}
}
}
旧文書番号
85934