想实现一个条形图上画曲线.双坐标.
现在是可以实现,一组条形图和一条曲线.
当有多组条形图时,就只出现最后组数据和第一组数据.效果就是:最后组数据和第一组数据所对应的图形种类,其它组数据就没能出现.代码如下:        public OleDbDataReader GetList(string Sql)
        {
            OleDbConnection myConnection = new OleDbConnection("Provider=SQLOLEDB;server=(local);uid=sa;pwd=gdcc;database=try;");
            OleDbCommand myCommand = new OleDbCommand(Sql, myConnection);
            myConnection.Open();
            OleDbDataReader result = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
            return result;
        }
        private void button3_Click(object sender, EventArgs e)
        {
            OleDbDataReader dr = GetList("select top 10 name,data1,data2,data3,data4 from trydata");
            d_Chart(dr);
        }
        public void d_Chart(OleDbDataReader sdr)
        {
            ArrayList[] data_al = new ArrayList[sdr.FieldCount];
            for (int i = 0; i < sdr.FieldCount; i++)
            {
                data_al[i] = new ArrayList();
            }
            while (sdr.Read())
            {
                for (int i = 0; i < sdr.FieldCount; i++)
                {
                    data_al[i].Add(sdr.GetValue(i).ToString());
                }
            }
            sdr.Close();
            //清空上一次存在的图例
            axChartSpace1.Clear();            ChChart objChart = axChartSpace1.Charts.Add(0);            //指定图表是否需要图例
            objChart.HasLegend = true;
            objChart.HasTitle = true;
            objChart.Title.Caption = "分析图";
            //xy轴说明
            objChart.Axes[0].HasTitle = true;
            objChart.Axes[0].Title.Caption = "OrderDate";
            objChart.Axes[1].HasTitle = true;
            objChart.Axes[1].Title.Caption = "ShipVia";            for (int i = 0; i < data_al.Length - 1; i++)
            {
                if (i == 0)
                {
                    //objChart.Type = ChartChartTypeEnum.chChartTypeSmoothLine;
                    objChart.SeriesCollection.Add(i);
                    objChart.SeriesCollection[i].DataLabelsCollection.Add();
                    objChart.SeriesCollection[i].Type = ChartChartTypeEnum.chChartTypeSmoothLine;
                    objChart.SeriesCollection[i].Ungroup(true);
                    ChAxis seAxes = objChart.Axes.Add(objChart.SeriesCollection[i].get_Scalings(ChartDimensionsEnum.chDimValues));
                    seAxes.Position = ChartAxisPositionEnum.chAxisPositionRight;
                    seAxes.HasMajorGridlines = false;
                    //给定series的名字
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimSeriesNames,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, i.ToString());
                    //给定分类
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimCategories,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, data_al[0].ToArray());
                    //给定值
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimValues,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, data_al[i + 1].ToArray());
                    objChart.SeriesCollection[i].Caption = "Example" + i.ToString();
                }
                else
                {
                    //在ChartSpace对象中添加图表,Add方法返回chart对象
                    objChart.SeriesCollection.Add(i);
                    objChart.SeriesCollection[i].Type = ChartChartTypeEnum.chChartTypeColumnClustered;
                    objChart.SeriesCollection[i].DataLabelsCollection.Add();
                    //给定series的名字
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimSeriesNames,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, i.ToString());
                    //给定分类
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimCategories,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, data_al[0].ToArray());
                    //给定值
                    objChart.SeriesCollection[i].SetData(ChartDimensionsEnum.chDimValues,
                     (int)ChartSpecialDataSourcesEnum.chDataLiteral, data_al[i + 1].ToArray());
                    objChart.SeriesCollection[i].Caption = "Example" + i.ToString();                }
            }
          }
这样就只有data1对应的曲线和data4对应的条形图出来了,而data2,data3对应的条形图却没有出来,我是想data2,data3的条形图也出来,望高手指点,谢谢!
分不够可再加!