MSChart,图表控件如何对应X轴时间问题
winform & C#程序,要用MSChart图表控件来显示,X轴是时间,每20分钟一个间隔,显示一天(24小时内的数据对应关系),X轴显示的时候,整点显示在X轴上,对应的竖线是实线,(也就是说X轴显示0-24个时间段,0-1,1-2,2-3等。。。这些个区间内实际还有2个竖线条(20分,40分),但用虚线表示,X轴上也不显示20分,40分这些文字)
MSChart显示柱状图
然后对应的数据库表 tb_Book 里有如下数据:
date book
2013-1-10 0:12:15 30
2013-1-10 0:35:42 15
2013-1-10 2:46:12 78
2013-1-10 14:58:09 175
请哪位熟悉MSChart的写个代码出来,不懂怎么写啊,调试能通过(或者大致给了代码的案例)结贴给分
[解决办法]
例如
chart.Series[0].XValueMember = "GoodsCode";----绑定X轴对应的字段
chart.Series[0].YValueMembers = "Rank";";----绑定Y轴对应的字段
[解决办法]
protected void Chart1_PreRender(object sender, EventArgs e)
{
if (Begin == ""
[解决办法]
End == "")
{
End = DateTime.Now.ToString("yyyy-MM-dd");
Begin = DateTime.Now.AddDays(-7).ToString("yyyy-MM-dd");
}
var dic = outcomeManager.GetDateSum(Begin, End);
List<string> date = new List<string>();
List<float> text = new List<float>();
foreach (var v in dic.Values)
{
text.Add(v);
}
foreach (var k in dic.Keys)
{
date.Add(k);
}
Chart1.Width = 600;
Chart1.Height = 350;
Chart1.BackColor = Color.Azure;//设置背景
Series series = new Series("test");
series.ChartType = SeriesChartType.Column;
series.Color = Color.Green;
series.BorderWidth = 2; //线条宽度
series.ShadowOffset = 1; //阴影宽度
series.IsVisibleInLegend = false; //是否显示数据说明
series.IsValueShownAsLabel = true;
series.MarkerStyle = MarkerStyle.Diamond; //线条上的数据点标志类型
series.MarkerSize = 8; // 标志的大小
DateTime date1 = DateTime.Now.Date;
for (int i = 0; i < text.Count; i++)
{
series.Points.AddXY(date[i], text[i]);//设置x,y轴
}
Chart1.Series.Add(series); //把数据集添加到Chart1 中
//设置坐标轴
Chart1.ChartAreas[0].AxisX.LineColor = Color.Blue;
Chart1.ChartAreas[0].AxisY.LineColor = Color.Blue;
Chart1.ChartAreas[0].AxisX.LineWidth = 2;
Chart1.ChartAreas[0].AxisY.LineWidth = 2;
Chart1.ChartAreas[0].AxisY.Title = "总额";
//设置网格线
Chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = Color.Blue;
Chart1.ChartAreas[0].AxisY.MajorGrid.LineColor = Color.Blue;
Begin = string.Empty;
End = string.Empty;
}