zoukankan      html  css  js  c++  java
  • OWC画图表的方法

    /**//// <summary>
        
    /// 生成图表
        
    /// </summary>
        
    /// <param name="strSeriesName">图表名称</param>
        
    /// <param name="strCategory">类型</param>
        
    /// <param name="strValue"></param>
        
    /// <param name="Caption">图标标题</param>
        
    /// <param name="Type">类型</param>
        
    /// <param name="Longth">图片长</param>
        
    /// <param name="Width">图片宽</param>
        public string GengerateChart(string strSeriesName, string strCategory, string strValue, string Caption, string Type, int Longth, int Width)
        {
            
    string chartSeriesName = strSeriesName;
            
    string chartCategory = strCategory;
            
    string chartValue = strValue;
            
    string chartCaption = Caption;
            
    string chartType = Type;
            
    int chartLongth = Longth;
            
    int chartWidth = Width;

            
    //创建ChartSpace对象来放置图表
            ChartSpace laySpace = new ChartSpaceClass();

            
    //在ChartSpace对象中添加图表
            ChChart InsertChart = laySpace.Charts.Add(0);
            
    switch (chartType)
            {
                
    case "Pie"://饼状图
                    {
                        InsertChart.Type 
    = ChartChartTypeEnum.chChartTypePie;
                        InsertChart.HasLegend 
    = true;
                        InsertChart.HasTitle 
    = true;//为图表添加标题
                        InsertChart.Title.Caption = chartCaption;//标题名称
                        InsertChart.Title.Font.Color = "Blue";
                        InsertChart.Title.Font.Name 
    = "黑体";
                        
    //指定图表是否需要图例标注
                        InsertChart.HasLegend = true;


                    }
                    
    break;

                
    case "Line"://折线图
                    {
                        InsertChart.Type 
    = ChartChartTypeEnum.chChartTypeLine;
                        
    //指定图表是否需要图例标注
                        InsertChart.HasLegend = true;

                        InsertChart.HasTitle 
    = true;//为图表添加标题
                        InsertChart.Title.Caption = chartCaption;//标题名称
                        InsertChart.Title.Font.Color = "Blue";
                        InsertChart.Title.Font.Name 
    = "黑体";
                    }
                    
    break;
                
    case "BarClustered"://条形图
                    {
                        InsertChart.Type 
    = ChartChartTypeEnum.chChartTypeBarClustered;
                        
    //指定图表是否需要图例标注
                        InsertChart.HasLegend = true;

                        InsertChart.HasTitle 
    = true;//为图表添加标题
                        InsertChart.Title.Caption = chartCaption;//标题名称
                        InsertChart.Title.Font.Color = "Blue";
                        InsertChart.Title.Font.Name 
    = "黑体";
                    }
                    
    break;
                
    case "Area"://面积图
                    {
                        InsertChart.Type 
    = ChartChartTypeEnum.chChartTypeArea;
                        
    //指定图表是否需要图例标注
                        InsertChart.HasLegend = true;
                        InsertChart.HasTitle 
    = true;//为图表添加标题
                        InsertChart.Title.Caption = chartCaption;//标题名称
                        InsertChart.Title.Font.Color = "Blue";
                        InsertChart.Title.Font.Name 
    = "黑体";
                    }
                    
    break;
            }

            
    //添加一个series系列
            InsertChart.SeriesCollection.Add(0);

            
    //给定series系列的名字
            InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimSeriesNames, +(int)ChartSpecialDataSourcesEnum.chDataLiteral, chartSeriesName);

            
    //给定分类
            InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimCategories, +(int)ChartSpecialDataSourcesEnum.chDataLiteral, chartCategory);

            
    //给定值
            InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, chartValue);

            
    if (chartType == "Pie")
            {
                
    //增加数据值标签
                InsertChart.SeriesCollection[0].DataLabelsCollection.Add();

                InsertChart.SeriesCollection[
    0].DataLabelsCollection[0].HasValue = true;
                InsertChart.SeriesCollection[
    0].DataLabelsCollection[0].HasPercentage = true;
            }

            
    //输出文件.
            string imageName = System.DateTime.Now.ToShortDateString().Replace("-""").Trim() + System.DateTime.Now.ToLongTimeString().Replace(":""").Trim();
            imageName 
    = imageName + System.DateTime.Now.Millisecond + "Chart.gif";
            
    string strAbsolutePath = (Server.MapPath(".")) + "\\" + imageName;
            laySpace.ExportPicture(strAbsolutePath, 
    "GIF", chartLongth, chartWidth);

            
    //创建GIF文件的相对路径.
            string strRelativePath = "./" + imageName;

            
    //把图片添加到placeholder中,并在页面上显示
            string strImageTag = "<IMG SRC='" + strRelativePath + "'/>";
            
    //this.PlaceHolder1.Controls.Add(new LiteralControl(strImageTag));
            return strRelativePath;


        }
    轉自:http://www.cnblogs.com/ucetgg/archive/2008/04/24/1169847.html

    申明

    非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!

    博文欢迎转载,但请给出原文连接。

  • 相关阅读:
    人民币对美元汇率的大数据分析与预测【完整代码】
    碧瑶答疑网——用户使用手册和反馈
    碧瑶答疑网—系统设计和任务分配
    碧瑶答疑网之选题报告
    碧瑶答疑网-软件需求规格说明书
    UEgCWbGGLA
    https://www.cnblogs.com/ggzjf/
    66666
    继承-代码块-接口
    人民币对澳元汇率的大数据分析与预测
  • 原文地址:https://www.cnblogs.com/Athrun/p/1170307.html
Copyright © 2011-2022 走看看