2017-04-03 10 views
2

私は、データベースから実行時に値が来るasp.net StackedBarグラフを作成しました。ASP.NET StackedBar Chart予期しない結果

enter image description here

はなぜ色がチャート上の値に応じて変更されません。ここで

は、それがどのように見えるのですか?

したがって、値56は赤色を表示し、値1は赤色を少なくします。今、値がすべて異なっていても、色の幅はすべて同じで、グラフの正しい効果を与えません。使用

コード:

Dim chart As New Chart 
       chart.ID = DtDistinct.Rows(I)("CourseSisID") 

       Dim chartareas As New ChartArea 
       chart.ChartAreas.Add(chartareas) 

       ' chart.DataBindTable(DtRecords.DefaultView) 

       chart.DataBindCrossTable(DtRecords.DefaultView, "Outcomescore", "ShortName", "Outcomescore", "Label=RecordsPerGroup") 
       chart.ChartAreas(0).AxisY.Interval = 1 
       chart.ChartAreas(0).AxisY.LabelStyle.IsEndLabelVisible = True 
       chart.Palette = ChartColorPalette.None 
       chart.PaletteCustomColors = New Color() {ColorTranslator.FromHtml("#DF5B59"), ColorTranslator.FromHtml("#E0D773 "), ColorTranslator.FromHtml("#8AAC53"), ColorTranslator.FromHtml("#6A843F")} 

       chart.ChartAreas(0).AxisX.MajorGrid.Enabled = False 
       chart.ChartAreas(0).AxisY.MajorGrid.Enabled = False 

       Dim charttitle As New Title 
       charttitle.Text = DtDistinct.Rows(I)("CourseSisID") 
       chart.Titles.Add(charttitle) 

       For Each cs As Series In chart.Series 
        cs.ChartType = SeriesChartType.StackedBar 
       Next 
       pnlcharts.Controls.Add(chart) 

データ:任意の助けをいただければ幸いです

enter image description here

。これで

chart.DataBindCrossTable(DtRecords.DefaultView, "Outcomescore", "ShortName", "Outcomescore", "Label=RecordsPerGroup"); 

は、この、 ディー

答えて

1

変更をありがとう

chart.DataBindCrossTable(DtRecords.DefaultView, "OutcomeScore", "ShortName", "RecordsPerGroup", "Label=RecordsPerGroup"); 

enter image description here

+0

ありがとうございました!!!これはうまくいった。私はこれをずっと試していましたが、小さなものがそれを働かせることを知りませんでした!!!! – dee

+0

大歓迎です! – jsanalytics

+0

ちょうどあなたが知っている、私たちが言っていることはあなたの周りにありがとうございます**アップ投票**:O: – jsanalytics