我有一个柱形图,它可以正常使用以下代码。现在我想通过添加Crickettime,Hockeytime和现有的足球时间来使它成为一个堆栈柱形图。我有类似的程序来找到Crickettime和Hockeytime。我想我需要在以下方法中指定系列,以便series1是足球时间,series2是板球时间,而系列3是曲棍球时间。有关如何指定系列的任何帮助。
private void GetChartData2(){
SqlConnection con2 = new System.Data.SqlClient.SqlConnection();
con2.ConnectionString = "connectionstring";
SqlCommand cmd2 = new SqlCommand("Execute spGetFootballTimeOftheUsersPerDay_Updated '" + currentUser + "'", con2);
cmd2.CommandTimeout = 0;
System.Data.SqlClient.SqlDataAdapter sqldataadap2 = new System.Data.SqlClient.SqlDataAdapter();
sqldataadap2.SelectCommand = cmd2;
DataTable dtable = new DataTable();
dtable.Locale = System.Globalization.CultureInfo.InvariantCulture;
sqldataadap2.Fill(dtable);
Chart2.DataSource = dtable;
Chart2.DataBind();
}
答案 0 :(得分:0)
我面对这种类型的抨击。我得到了解决方案。
按照以下步骤操作。
您只需使用一个包含所有列的系列(足球,Hocky,Cricket)即可管理您的数据
堆积图表工作系列1表示所有列数据同时显示
您可以按照自己的方式逐栏管理数据 第一点cricket列数据比添加另一列数据为0 你的桌子第一排(板球)得到100而不是为了足球和hocky添加另一排
以下表格类型
没有比赛分数
1板球100
2 hocky 0
3足球0
4板球0
5 hocky 200
6足球0
7板球0
8 hocky 0
9足球300
示例 - 板球数据(0)= 100足球(0)= 0 Hocky(0)= 0
Series.Points(0)X = 0,Y = 100 Cricket
(1)X = 0,Y = 0足球
(2)X = 0,Y = 0 Hocky
你必须管理这类数据。
系列数据 板球数据1到100比生成SRno 1到100 Hocky数据1到100比生成SRno 1到100 足球数据1到100比生成srno 1到100
代码
BreakWisechart.DataBindCrossTable(dv, "SrNo", "GameColumn", "Score","Tooltip=GameColumn,Label=Score")
For Each cs As Series In BreakWisechart.Series
With cs
.ChartType = SeriesChartType.StackedColumn
For Each Points In cs.Points
**If Points.ToolTip = "1" Then
.Color = Color.Red
Else
.Color = Color.Green
End If**
Next
.IsValueShownAsLabel = False
.YAxisType = AxisType.Secondary
.Font = New Font("Calibri", 6, FontStyle.Regular)
End With
Next