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的写个代码出来,不懂怎么写啊,调试能通过(或者大致给了代码的案例)结贴给分
 

解决方案 »

  1.   

    例如
    chart.Series[0].XValueMember = "GoodsCode";----绑定X轴对应的字段
    chart.Series[0].YValueMembers = "Rank";";----绑定Y轴对应的字段
      

  2.   


     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;        }