求在asp.net页面上画饼状图的代码

大哥,看你的问题,你以前画过这个饼状图么,代码还在么?能给我一份么?谢谢了。... 大哥,看你的问题,你以前画过这个饼状图么,代码还在么?能给我一份么?谢谢了。 展开
 我来答
匿名用户
2014-01-14
展开全部
找插件 网上很多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yanhanp
2014-01-15 · 超过12用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:24.4万
展开全部

我给你一个吧用的是微软的owc做的

记得引用

using Microsoft.Office.Interop.Owc11;

/// <summary>
    /// 生成折线图
    /// </summary>
    private void ShowChartTypeLine()
    {
        //创建图形容器对象
        ChartSpace chartSpace = new ChartSpace();
        //添加图象对象
        ChChart chChart = chartSpace.Charts.Add(0);
        chChart.Type = ChartChartTypeEnum.chChartTypeLine;//折线图

        //chChart.Legend.Position = ChartLegendPositionEnum.chLegendPositionBottom;
        ChSeries chSeries = chChart.SeriesCollection.Add(0);
        //给定series的名字
        chSeries.SetData(ChartDimensionsEnum.chDimSeriesNames, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "1\t2\t3\t4");
        //给定分类
        chSeries.SetData(ChartDimensionsEnum.chDimCategories,(int)ChartSpecialDataSourcesEnum.chDataLiteral,"1\t2\t3\t4\t5\t6\t7\t8\t9\t10\t11\t12");
        //给定值
        chSeries.SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "300\t100\t643\t200\t300\t100\t643\t200\t300\t100\t643\t200");

        //chSeries.DataLabelsCollection[0].HasValue = true;
        chChart.Axes[0].HasTitle = true;
        chChart.Axes[0].Title.Caption = "月份";

        chChart.Axes[1].HasTitle = true;
        chChart.Axes[1].Title.Caption = "销量";
        chChart.SeriesCollection[0].DataLabelsCollection.Add();
        chChart.SeriesCollection[0].DataLabelsCollection[0].HasValue = true;

        //设置要保存的图片的名字
        string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "Line.jpg";
        //设置图片的保存路径
        string filePath = Server.MapPath("~/images/") + fileName;
        //将当前图形对象导出成图片文件保存到磁盘上
        chartSpace.ExportPicture(filePath, "jpg", 300, 300);
        //设置Image控件的Url地址以便显示
        imgLine.ImageUrl = "../images/" + fileName;
    }
/// <summary>
    /// 生成饼图
    /// </summary>
    private void ShowChartTypePie()
    {
        //创建图形容器对象
        ChartSpace chartSpace = new ChartSpace();
        //添加图象对象
        ChChart chChart = chartSpace.Charts.Add(0);
        chChart.Type = ChartChartTypeEnum.chChartTypePie;//饼图

        //chChart.Border.Color = "green";
        //设置图形对象具有标题
        chChart.HasTitle = true;
        //设置图形对象的标题
        chChart.Title.Caption = "上网方式统计";
        //设置图形对象的标题字体大小
        chChart.Title.Font.Size = 12;
        //设置图形对象的标题字体加粗
        chChart.Title.Font.Bold = true;
        //设置图形对象的标题颜色
        chChart.Title.Font.Color = "Blue";
        //设置是否显示图形
        chChart.HasLegend = true;
        //设置图形对象的字体大小
        chChart.Legend.Font.Size = 10;
        //设置图形对象的关联的文字位置
        chChart.Legend.Position = ChartLegendPositionEnum.chLegendPositionBottom;

        ChSeries chSeries = chChart.SeriesCollection.Add(0);
        //设置系列的值,注意各个数值之间必须以'\t'分隔,否则会被当作一个数据
        chSeries.SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "16.3\t59.3\t8.3\t16.1");
        //设置系列关联的名字,注意各个数值之间必须以'\t'分隔,否则会被当作一个数据
        chSeries.SetData(ChartDimensionsEnum.chDimCategories, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "拨号\tASDL\t光纤\t小区宽带");

        chSeries.DataLabelsCollection.Add();
        //chSeries.DataLabelsCollection[0].HasValue = true;
        chSeries.DataLabelsCollection[0].HasPercentage = true;

        //设置要保存的图片的名字
        string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "Pie.jpg";
        //设置图片的保存路径
        string filePath = Server.MapPath("~/images/") + fileName;
        //将当前图形对象导出成图片文件保存到磁盘上
        chartSpace.ExportPicture(filePath, "jpg", 300, 300);
        //设置Image控件的Url地址以便显示
        imgPie.ImageUrl = "../images/" + fileName;
    }
/// <summary>
    /// 生成柱状图
    /// </summary>
    protected void ShowChartTypeColumnClustered()
    {
        //创建图形容器对象
        ChartSpace chartSpace = new ChartSpace();
        //添加图象对象
        ChChart chChart = chartSpace.Charts.Add(0);
        //设置图形对象图例类型,这里设置成柱状图,
        //注意:图形类型不同,所用到的属性可能就不会相同,比如饼图就不能设置X,Y轴的属性
        chChart.Type = ChartChartTypeEnum.chChartTypeColumnClustered;//柱状图
        //chChart.Type = ChartChartTypeEnum.chChartTypeLine;//折线图
        //chChart.Type = ChartChartTypeEnum.chChartTypeArea;//面积图
        //chChart.Type = ChartChartTypeEnum.chChartTypeBarClustered;//条形图
        //chChart.Type = ChartChartTypeEnum.chChartTypePie;//饼图
        
        //设置图形对象的边框颜色
        chChart.Border.Color = "Red";
        //设置图形对象具有标题
        chChart.HasTitle = true;
        //设置图形对象的标题
        chChart.Title.Caption = "周公的OWC测试";
        //设置图形对象的标题字体大小
        chChart.Title.Font.Size = 12;
        //设置图形对象的标题字体加粗
        chChart.Title.Font.Bold = true;
        //设置图形对象的标题颜色
        chChart.Title.Font.Color = "Blue";
        //设置是否显示图形
        chChart.HasLegend = true;
        //设置图形对象的字体大小
        chChart.Legend.Font.Size = 10;
        //设置图形对象的关联的文字位置
        chChart.Legend.Position = ChartLegendPositionEnum.chLegendPositionBottom;
        //设置显示X轴上的标题
        chChart.Axes[0].HasTitle = true;
        //设置X轴标题
        chChart.Axes[0].Title.Caption = "人物";
        //设置显示Y轴上的标题
        chChart.Axes[1].HasTitle = true;
        //设置Y轴标题
        chChart.Axes[1].Title.Caption = "数量";
        ChSeries chSeries = chChart.SeriesCollection.Add(0);

        //设置系列的名字
        chSeries.SetData(ChartDimensionsEnum.chDimSeriesNames, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "战斗力");
        //设置系列的值,注意各个数值之间必须以'\t'分隔,否则会被当作一个数据
        chSeries.SetData(ChartDimensionsEnum.chDimValues, -1, "800\t998\t990\t234");
        //设置系列关联的名字,注意各个数值之间必须以'\t'分隔,否则会被当作一个数据
        chSeries.SetData(ChartDimensionsEnum.chDimCategories, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "周公\t关公\t张公\t朱公");
        //在柱状图里显示数值
        chSeries.DataLabelsCollection.Add();
        chSeries.DataLabelsCollection[0].HasValue = true;
        
        chSeries = chChart.SeriesCollection.Add(1);
        //设置系列的名字
        chSeries.SetData(ChartDimensionsEnum.chDimSeriesNames, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "幽默指数");
        chSeries.SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, "999\t580\t320\t960");
        //在柱状图里显示数值
        chSeries.DataLabelsCollection.Add();
        chSeries.DataLabelsCollection[0].HasValue = true;
        //设置要保存的图片的名字
        string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "ColumnClustered.jpg";
       //设置图片的保存路径
        string filePath = Server.MapPath("~/images/") + fileName;
        //将当前图形对象导出成图片文件保存到磁盘上
        chartSpace.ExportPicture(filePath, "jpg", 300, 300);
        //设置Image控件的Url地址以便显示
        imgChartTypeColumnClustered.ImageUrl = "../images/" + fileName;

    }
protected void Page_Load(object sender, EventArgs e)
    {
        ShowChartTypeColumnClustered();
        ShowChartTypePie();
        ShowChartTypeLine();
    }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
stydfans
2014-01-14 · TA获得超过668个赞
知道小有建树答主
回答量:1263
采纳率:100%
帮助的人:511万
展开全部
ASP.NET有一个图标控件 MSCHAT,官网有很多它的实例。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式