0

SQL Serverからtelerik折れ線グラフにデータをバインドするにはどうすればよいですか?

現時点での私の設定では、いくつかの情報を取得するスケジュールされたタスクがあります(簡単にするために、これは単なる整数値であるとしましょう)。この情報は、スケジュールされたタスクが実行された日時とともにデータベースに保存されます。

私がやりたいのは、時間の経過に伴うこの整数のグラフを作成することです(Y軸に沿って値がマークされ、Xに沿って時間がマークされています)。

Teleriks Webサイトのバインディングの例のほとんどには、データがXAMLファイルにハードコードされている静的クラスが含まれています。

私が望むようにデータを構造化して取得するための最善の方法は何ですか?

私はこの例を見ていましたが、データがバインディングから実際にどのように取得されるか、およびバインディングがどのように機能するかについてはあまり詳しく説明していません。

どうもありがとう。

4

1 に答える 1

0

つい最近、私はそのようなプロジェクトに参加しました。これが私のやり方です(同じチャートに複数の線を表示する必要があったため、私の方法は少し複雑でしたが)、お役に立てば幸いです。

私のデータテーブルは次の形式でした:

Tours   dtMonthno   dtMonth               dtYear
115                1    Jan                 2012
102                2    Feb                 2012
105                3    Mar                 2012
78                 4    Apr                 2012

私のコードは次のとおりです。ここで、y軸はツアー、x軸はdtMonthno(実際の月番号)です。

           DataTable dt = GetGroupChartData(Convert.ToDateTime(txtStartDate.Text), Convert.ToDateTime(txtEndDate.Text + " 23:59"));

            ChartSeries chartSeries = new ChartSeries();
            radGroups.Clear();
            chartSeries.DataYColumn = "Tours";
            radGroups.ChartTitle.TextBlock.Text = "Groups";
            chartSeries.Name = "Tours";

            radGroups.PlotArea.XAxis.LayoutMode = Telerik.Charting.Styles.ChartAxisLayoutMode.Inside;
            chartSeries.Appearance.LineSeriesAppearance.Color = System.Drawing.Color.Blue; 

            //set y axis color
            radGroups.PlotArea.YAxis.AxisLabel.TextBlock.Appearance.TextProperties.Color = System.Drawing.Color.Red;
            radGroups.PlotArea.YAxis.Appearance.Width = 3;
            radGroups.PlotArea.YAxis.Appearance.Color = System.Drawing.Color.Red; 
            chartSeries.Type = ChartSeriesType.Line;

            radGroups.PlotArea.XAxis.DataLabelsColumn = "dtMonth";
            radGroups.PlotArea.XAxis.AxisLabel.TextBlock.Text = "Months";

            //set x axis color
            radGroups.PlotArea.XAxis.AxisLabel.TextBlock.Appearance.TextProperties.Color = System.Drawing.Color.Red; 
            radGroups.PlotArea.XAxis.Appearance.Width = 3;
            radGroups.PlotArea.XAxis.Appearance.Color = System.Drawing.Color.Red;
            radGroups.AddChartSeries(chartSeries);

            // visually enhance the data points
            chartSeries.Appearance.PointMark.Dimensions.Width = 5;
            chartSeries.Appearance.PointMark.Dimensions.Height = 5;
            chartSeries.Appearance.PointMark.FillStyle.MainColor = System.Drawing.Color.Black;
            chartSeries.Appearance.PointMark.Visible = true;

            radGroups.DataSource = dt;
            radGroups.DataBind();
于 2012-04-23T14:43:34.067 に答える