このセクションでは、ローソク足チャートを作成する手順を説明します。このグラフは、Y 軸上の4つの Y 変数で株式の高値、安値、始値、および終値が表されるローソク足チャートとして情報を表示し、X 軸の値は各ローソクの位置を示します。
ここでは、次の図のようなグラフを作成します。

デザイン時のローソク足チャートの作成
このトピックでは、[グラフのプロパティ]ダイアログボックスを使用してローソク足チャートを作成する手順を説明します。デザイン時に数段階の簡単な手順でグラフ種別を設定し、データセットを変更し、データをグラフに追加し、ローソクの外観を書式設定する方法を学びます。
スマートタグの[グラフのプロパティ]によるグラフ設定の最初の手順は、利用可能な多数のグラフ種別からギャラリーの種別を選択することです。横棒や折れ線のような基本的なグラフ種別から極や等高線のようなより複雑なグラフまで、C1Chart では、必要なあらゆるデータ視覚化を処理できます。

〈削除〉をクリックして、全てのデータセットを削除します。
次に、線の色を赤に変更し、ローソクの線の太さと本体の幅を太くします。線の色と太さを変更するには LineStyle プロパティを、また、ローソクの本体幅を変更するにはSymbolStyle プロパティを使用します。

ローソクの本体がデフォルトサイズ(5)から 10 に拡大します。
プログラムによるローソク足チャートの作成
ローソク足チャートは、以下の手順を使用してプログラムで作成できます。
Visual Basic コードの書き方
| Visual Basic |
コードのコピー
|
|---|---|
Imports C1.Win.C1Chart |
|
C# コードの書き方
| C# |
コードのコピー
|
|---|---|
using C1.Win.C1Chart; |
|
Visual Basic コードの書き方
| Visual Basic |
コードのコピー
|
|---|---|
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
c1Chart1.ChartGroups(0).ChartData.SeriesList.AddNewSeries()
'x と y の変数を double として宣言して x、y、y1、y2、y3 の各値を表し、値を割り当て
Dim x As Double() = New Double() {1, 2, 3, 4, 5}
Dim y_hi As Double() = New Double() {8, 12, 10, 12, 15}
Dim y_low As Double() = New Double() {20, 22, 19, 24, 25}
Dim y_open As Double() = New Double() {10, 16, 17, 15, 23}
Dim y_close As Double() = New Double() {16, 19, 15, 22, 18}
'x、y、y1、y2、y3 の各データをチャートグループにコピー
c1Chart1.ChartGroups(0).ChartData(0).X.CopyDataIn(x)
c1Chart1.ChartGroups(0).ChartData(0).Y.CopyDataIn(y_hi)
c1Chart1.ChartGroups(0).ChartData(0).Y1.CopyDataIn(y_low)
c1Chart1.ChartGroups(0).ChartData(0).Y2.CopyDataIn(y_open)
c1Chart1.ChartGroups(0).ChartData(0).Y3.CopyDataIn(y_close)
'ローソク足チャートをグラフ種別に指定
c1Chart1.ChartGroups(0).ChartType = C1.Win.C1Chart.Chart2DTypeEnum.Candle
'上昇時のローソクを透明にして株価の上昇を表示
c1Chart1.ChartGroups(0).HiLoData.FillTransparent = True
'線の色を設定
c1Chart1.ChartGroups(0).ChartData.SeriesList(0).LineStyle.Color = System.Drawing.Color.Red
'線の太さを設定
c1Chart1.ChartGroups(0).ChartData.SeriesList(0).LineStyle.Thickness = 2
'ローソクの本体幅を設定
c1Chart1.ChartGroups(0).ChartData.SeriesList(0).SymbolStyle.Size = 10
End Sub
|
|
C# コードの書き方
| C# |
コードのコピー
|
|---|---|
private void Form1_Load(object sender, EventArgs e)
{
c1Chart1.ChartGroups[0].ChartData.SeriesList.AddNewSeries();
//x と y の変数を double として宣言して x、y、y1、y2、y3 の各値を表し、値を割り当て
double[] x = new double[] { 1, 2, 3, 4, 5 };
double[] y_hi = new double[] { 8, 12, 10, 12, 15 };
double[] y_low = new double[] { 20, 22, 19, 24, 25 };
double[] y_open = new double[] { 10, 16, 17, 15, 23 };
double[] y_close = new double[] { 16, 19, 15, 22, 18 };
//x、y、y1、y2、y3 の各データをチャートグループにコピー
c1Chart1.ChartGroups[0].ChartData[0].X.CopyDataIn(x);
c1Chart1.ChartGroups[0].ChartData[0].Y.CopyDataIn(y_hi);
c1Chart1.ChartGroups[0].ChartData[0].Y1.CopyDataIn(y_low);
c1Chart1.ChartGroups[0].ChartData[0].Y2.CopyDataIn(y_open);
c1Chart1.ChartGroups[0].ChartData[0].Y3.CopyDataIn(y_close);
//ローソク足チャートをグラフ種別に指定
c1Chart1.ChartGroups[0].ChartType = C1.Win.C1Chart.Chart2DTypeEnum.Candle;
//上昇時のローソクを透明にして株価の上昇を表示
c1Chart1.ChartGroups[0].HiLoData.FillTransparent = true;
//線の色を設定
c1Chart1.ChartGroups[0].ChartData.SeriesList[0].LineStyle.Color = System.Drawing.Color.Red;
//線の太さを設定
c1Chart1.ChartGroups[0].ChartData.SeriesList[0].LineStyle.Thickness = 2;
c1Chart1.ChartGroups[0].ChartData.SeriesList[0].SymbolStyle.Size = 10;
}
|
|