'创建ChartSpace对象来放置图表 Dim myChart As ChartSpaceClass = New ChartSpaceClass '在ChartSpace对象中添加图表,Add方法返回chart对象 Dim Chart1 As ChChart = myChart.Charts.Add(0) '指定图表的类型。类型由OWC.ChartChartTypeEnum枚举值得到 Chart1.Type = OWC10.ChartChartTypeEnum.chChartTypeColumnClustered '指定图表是否需要图例 Chart1.HasLegend = True Chart1.Legend.Position = ChartLegendPositionEnum.chLegendPositionTop '给定标题 Chart1.HasTitle = True Chart1.Title.Caption = "1-6月数据分布图" '计算数据 'X轴 Dim strCategory As String = "1" + ControlChars.Tab + "2" + ControlChars.Tab _ + "3" + ControlChars.Tab + "4" + ControlChars.Tab + "5" + ControlChars.Tab _ + "6" + ControlChars.Tab 'Y轴 Dim strValue As String = "9" + ControlChars.Tab + "8" + ControlChars.Tab _ + "4" + ControlChars.Tab + "10" + ControlChars.Tab + "12" + ControlChars.Tab _ + "6" + ControlChars.Tab 'Z轴 Dim strValue2 As String = "0.3" + ControlChars.Tab + "0.63" + ControlChars.Tab _ + "0.48" + ControlChars.Tab + "0.86" + ControlChars.Tab + "0.95" + ControlChars.Tab _ + "0.18" + ControlChars.Tab '1. 添加一个series Dim Ser1 As ChSeries = Chart1.SeriesCollection.Add(0) '给定series的名字 Ser1.SetData(ChartDimensionsEnum.chDimSeriesNames, _ ChartSpecialDataSourcesEnum.chDataLiteral, "Product") '给定分类 Ser1.SetData(ChartDimensionsEnum.chDimCategories, _ ChartSpecialDataSourcesEnum.chDataLiteral, strCategory) '给定值 Ser1.SetData(ChartDimensionsEnum.chDimValues, _ ChartSpecialDataSourcesEnum.chDataLiteral, strValue) '2. 再添加一个series Dim Ser2 As ChSeries = Chart1.SeriesCollection.Add(1) '给定series的名字 Ser2.SetData(ChartDimensionsEnum.chDimSeriesNames, _ ChartSpecialDataSourcesEnum.chDataLiteral, "Ratio") '给定分类 Ser2.SetData(ChartDimensionsEnum.chDimCategories, _ ChartSpecialDataSourcesEnum.chDataLiteral, strCategory) '给定值 Ser2.SetData(ChartDimensionsEnum.chDimValues, _ ChartSpecialDataSourcesEnum.chDataLiteral, strValue2) Ser2.Ungroup(True) Ser2.Type = ChartChartTypeEnum.chChartTypeLineMarkers '添加Z轴 Dim AxesZ As ChAxis = Chart1.Axes.Add(Ser2.Scalings(ChartDimensionsEnum.chDimValues)) AxesZ.NumberFormat = "0.00%" AxesZ.Position = ChartAxisPositionEnum.chAxisPositionRight '给定x,y轴的图示说明 '默认只有X,Y 两个轴 Chart1.Axes(-3).HasTitle = True Chart1.Axes(-3).Title.Caption = "Y 轴 : 数量" Chart1.Axes(-2).HasTitle = True Chart1.Axes(-2).Title.Caption = "X 轴: 月份" AxesZ.HasTitle = True AxesZ.Title.Caption = "Z 轴: Ratio" '输出成GIF文件. Dim strAbsolutePath As String = "C:Images" & Format(Date.Now, "yyyyMMddhhmmss") & ".gif" myChart.ExportPicture(strAbsolutePath, "GIF", 600, 350) Me.Image1.ImageUrl = strAbsolutePath