asp.net MVC项目开发之统计图echarts柱状图(一…
2018-06-22 07:34:59来源:未知 阅读 ()
<script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
网页打开进行加载事件,一个是echarts统计图的路径配置加载,另外一个是区域事件加载。
//打开网页加载 $(function () { // 路径配置 require.config({ paths: { echarts: 'http://echarts.baidu.com/build/dist' } }); areaQuery(); })
我们加载的 areaQuery();这个方法,这里代码没怎么优化,本人非前端,能力有限。欢迎大家提供优化方式。这里主要是区域查询的判断,以及异步获取数据库数据
//区域查询事件 function areaQuery() { var arrays = new Array(); //村级数据 var nameArrays = new Array(); var county = $("#ddlCountyArea option:selected").attr("value");//县 var town = $("#ddlTownArea option:selected").attr("value");//镇 var village = $("#ddlSubArea option:selected").attr("value");//村 var AreaId = 0; var level = 0; if (village != "") { level = 3; AreaId = village; name = "村级区域"; } else { if (town != "") { AreaId = town; level = 2; name = "镇级区域"; } else { if (county != "") { AreaId = county; level = 1; name = "县级区域"; } } } //异步获取统计图数据 $.ajax({ type: "post", url: "@Url.Action("GetCommunityList")", datatype: "json", data: { areaId: AreaId, level: level }, beforesend: function (xmlhttprequest) { $("#pint").text("数据正在加载中,请稍后........."); }, success: function (json) { nameArrays.splice(0, nameArrays.length); //先清空数据,然后在插入 arrays.splice(0, arrays.length); //先清空数据,然后在插入 for (var item in json) { nameArrays.push(item); arrays.push(parseInt(json[item])); setOptionBar(name,nameArrays,arrays); } }, error: function () { alert("数据加载异常,请联系管理员"); } }); }
柱状图我根据自己的需要修改了下,因为是查询每次显示一种类型数据即可
//统计图设置 function setOptionBar(name, nameArrays, arrays) { // 使用 require( [ 'echarts', 'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载 ], function (ec) { // 基于准备好的dom,初始化echarts图表 var myChart = ec.init(document.getElementById('main')); option = { tooltip: { show: true, trigger: 'item' }, legend: { data: ['村级区域', '镇级区域', '县级区域'] }, toolbox: { show: true, feature: { mark: { show: true }, dataView: { show: true, readOnly: false }, magicType: { show: true, type: ['bar'] }, restore: { show: true }, saveAsImage: { show: true } } }, xAxis: [ { type: 'category', data: nameArrays, axisLabel: { interval: 0 //用来设置x轴信息是否完全显示,0表示完全显示 } } ], yAxis: [ { type: 'value' } ], series: [ { name: name, type: 'bar', barWidth: 40, // 系列级个性化,柱形宽度 itemStyle: { normal: { // 系列级个性化,横向渐变填充 borderRadius: 5, color: (function () { var zrColor = require('zrender/tool/color'); return zrColor.getLinearGradient( 0, 0, 1000, 0, [[0, 'rgba(30,144,255,0.8)'], [1, 'rgba(138,43,226,0.8)']] ) })(), label: { show: true, textStyle: { fontSize: '20', fontFamily: '微软雅黑', fontWeight: 'bold' } } } }, data: arrays, markLine: {//显示线性数据,最大值,最小值,平均值 data: [ { type: 'average', name: '平均值' }, { type: 'max' }, { type: 'min' } ] } } ] }; // 为echarts对象加载数据 myChart.setOption(option); } ); }
效果图如下
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- asp.net源程序编译为dll文件并调用的实现过程 2020-03-29
- Asp.net MVC SignalR来做实时Web聊天实例代码 2020-03-29
- ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据 2020-03-29
- Asp.Net中WebForm的生命周期 2020-03-29
- ASP.NET使用Ajax返回Json对象的方法 2020-03-23
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash