zoukankan      html  css  js  c++  java
  • Open Flash Chart 初体验

    今天项目中要用到图表统计,原来用的是Dundas 但效果不怎么好 后来发现Open Flash Chart不错  而且是结合着
    Flash 比较动态  可到官方下载查看http://teethgrinder.co.uk/open-flash-chart/
    而且是很多语言都支持的  虽然有专门语言的,但我还是喜欢使用原生的.
    项目是用asp.net做  官方有直接由对其封装的dll,个人觉得没必要 ,直接构建更好 移植到其他语言也方便。
    项目中只用到了饼图  所以也就只看了饼图 。。。。
    使用:
    //导入swfobject.js和open-flash-chart.swf
    //mychart 要渲染的DIV       data.aspx?type=1  json格式数据源
       <script type="text/javascript" src="../JS/swfobject.js"></script>

        <script type="text/javascript">

    swfobject.embedSWF("../flash/open-flash-chart.swf", "mychart", "400", "220", "9.0.0", "expressInstall.swf", {"data-file":"data.aspx?type=1"});

        </script>

    那来看一下data.aspx

            string type = Request.Params["type"];
           
            StringBuilder sb = new StringBuilder();
            string title = "";
            string vid = Session["villageId"].ToString();
            if (type != "")
            {
    //构建JSON格式
    //tip  鼠标悬停提示  val当期值  total总值 percent百分比  都人家给你算好了 自己不用操心
                sb.Append("{");
                sb.Append("\"elements\":[{\"tip\":\"#val#人/共#total#人   所占百分比#percent#\",\"font-size\": 13,");
                sb.Append("\"colours\":[\"#0247fe\", \"#3d01a4\", \"#8601af\", \"#a7194b\",\"#fe2712\", \"#fd5308\", \"#fb9902\", \"#fabc02\",");
                sb.Append("\"#fefe33\", \"#d0ea2b\", \"#66b032\", \"#0392ce\",\"0x663366\", \"0x9999CC\", \"0xAAAAAA\", \"0x669999\",\"0xBBBB55\", \"0xCC6600\",\"0x9999FF\", \"0x0066CC\",\"0x99CCCC\"], \"alpha\" : 0.3, \"animate\": true, \"label-colour\": \"#432baf\",");
                sb.Append("\"values\":[");
                int i = 1;
                //年龄统计
                if (type == "1")
                {
                    using (SqlDataReader sdr = YQKC.DBOper.DataReader("agestatistics", new SqlParameter("vid", vid)))
                    {

                        while (sdr.Read())
                        {
                            sb.Append("{\"value\":" + sdr[1].ToString() + ",");
                            if (i != 5)
                            {
                                sb.Append("\"label\":\"" + sdr[0].ToString() + "\"},");
                            }
                            else
                                sb.Append("\"label\":\"" + sdr[0].ToString() + "\"}");
                            i++;
                        }
                        title = "年龄分布图";
                    }
                }

        

                //学历分布
                if (type == "2")
                {
                   //略

                }
        
                sb.Append("],");
                sb.Append("\"type\":\"pie\",\"border\" : \"2\"");
                sb.Append("}],");
                sb.Append("\"bg_colour\" : \"#FAFAFA\", \"title\" : {");
                sb.Append("\"text\": \"" + title + "\",\"style\": \"{font-size: 14px; color:#0000ff; font-family: Verdana; text-align: center;}\"");
                sb.Append("}");
                sb.Append("}");
                Response.Write(sb.ToString());
            }

    构建的时候  注意不能用单引号!

    如此就OK  。。。

  • 相关阅读:
    STM32使用keil串口输出中文乱码问题
    STM32CUBEMX忘记配置sys中的debug导致程序只能下载一次的问题
    远渡重洋的开源之路我是买家项目
    其实我就是个技术迷自身定位及展望
    五一上海行
    The Secret 秘密 读书笔记
    MySQL数据库设计复习笔记及项目实战
    PHP可调试团队开发环境配置支持企业级开发
    WIN7下QQ概念版使用手记
    Memento
  • 原文地址:https://www.cnblogs.com/zhangqifeng/p/1559130.html
Copyright © 2011-2022 走看看