MESCIUS SPREAD for ASP.NET 10.0J > 開発者の手引き > チャート > チャートの作成 > データの接続 > 連結データソース |
チャートは、以下のデータソースに連結できます。
チャートをデータに連結すると、チャートの描画時に、データが動的にプロットされます。 プロットエリアに追加されている各系列にデータソースを連結することで、1つのチャートに対して複数のデータソースからのデータ、および1つのデータソース内の複数のデータフィールドを使用および表示できます。
系列オブジェクトのValuesプロパティが参照するDoubleCollection クラスのDataSource プロパティを使用して、データソースを追加します。
次のサンプルコードは、棒チャート系列(BarSeries クラス)に配列を連結する方法を示します。
// 配列を作成し、コントロールに連結します。 object[] values = new object[] { 2, 4.0, 3.0m, "5.0" }; FarPoint.Web.Chart.BarSeries series = new FarPoint.Web.Chart.BarSeries(); series.Values.DataSource = values;
' 配列を作成し、コントロールに連結します。 Dim values() As Object = {2, 4.0, 3.0D, "5.0"} Dim series As New FarPoint.Web.Chart.BarSeries() series.Values.DataSource = values
次のサンプルコードは、棒チャート系列(BarSeries クラス)にデータテーブルに連結する方法を示します。
System.Data.DataTable dt = new System.Data.DataTable("Test"); System.Data.DataRow dr = default(System.Data.DataRow); dt.Columns.Add("Series0"); dt.Columns.Add("Series1"); dr = dt.NewRow(); dr[0] = 2; dr[1] = 1; dt.Rows.Add(dr); dr = dt.NewRow(); dr[0] = 4; dr[1] = 2; dt.Rows.Add(dr); dr = dt.NewRow(); dr[0] = 3; dr[1] = 4; FarPoint.Web.Chart.BarSeries series = new FarPoint.Web.Chart.BarSeries(); series.Values.DataSource = dt; series.Values.DataField = dt.Columns[0].ColumnName; FarPoint.Web.Chart.YPlotArea plotArea = new FarPoint.Web.Chart.YPlotArea(); FarPoint.Web.Chart.ChartModel model = new FarPoint.Web.Chart.ChartModel(); plotArea.Location = new System.Drawing.PointF(0.2F, 0.2F); plotArea.Size = new System.Drawing.SizeF(0.6F, 0.6F); plotArea.Series.Add(series); model.PlotAreas.Add(plotArea); FarPoint.Web.Spread.Chart.SpreadChart chart = new FarPoint.Web.Spread.Chart.SpreadChart(); chart.Model = model; FpSpread1.Sheets[0].Charts.Add(chart);
Dim dt As New System.Data.DataTable("Test") Dim dr As System.Data.DataRow dt.Columns.Add("Series0") dt.Columns.Add("Series1") dr = dt.NewRow() dr(0) = 2 dr(1) = 1 dt.Rows.Add(dr) dr = dt.NewRow() dr(0) = 4 dr(1) = 2 dt.Rows.Add(dr) dr = dt.NewRow() dr(0) = 3 dr(1) = 4 dt.Rows.Add(dr) Dim series As New FarPoint.Web.Chart.BarSeries series.Values.DataSource = dt series.Values.DataField = dt.Columns(0).ColumnName Dim model As New FarPoint.Web.Chart.ChartModel() Dim plotArea As New FarPoint.Web.Chart.YPlotArea() plotArea.Location = New System.Drawing.PointF(0.2F, 0.2F) plotArea.Size = New System.Drawing.SizeF(0.6F, 0.6F) plotArea.Series.Add(series) model.PlotAreas.Add(plotArea) Dim chart As New FarPoint.Web.Spread.Chart.SpreadChart() chart.Model = model FpSpread1.Sheets(0).Charts.Add(chart)