说明:开发环境vs2012 ,asp.net mvc4项目,c#语言

1、效果图

2、HTML 前端代码

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EchartTest.aspx.cs" Inherits="MvcAppTest.EchartTest" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="ewJS/jquery.js"></script>
<script src="ewJS/echarts.js"></script>
<script src="ewJS/echartObject.js"></script>
<script type="text/ecmascript">
var comArray = new Array();
var comKey = new Array();
var comValue = new Array();
var earthArray = new Array();
var earthKey = new Array();
var earthValue = new Array();
var valueArray = new Array();
var valKey = new Array();
var valValue = new Array();
var areaArray = new Array();
var areaKey = new Array();
var areaValue = new Array();
var xLocation;//图表图标的位置
$(function () {
xLocation = 300;
HuiZongChart(100);
});
function HuiZongChart(officeID) { earthKey = [];
earthValue = [];
comKey = [];
comValue = [];
valKey = [];
valValue = [];
areaKey = [];
areaValue = [];
$.ajax({
type: 'post',
url: 'Home/GetHZdata',
async: false,
dataType: 'json',
data: { officeId: officeID },
success: function (d) {
$.each(d, function (key, val) {
if (key == "GSValueList") {
if (val.length > 0) {
for (var i = 0; i < val.length; i++) {
if (val[i].IsoK == '1') { switch (val[i].id) {
case 1:
earthKey.push('A类用地');
earthValue.push(d.gxhzvalueModel.PLCount);
areaKey.push("A类用地");
areaValue.push(d.gxhzvalueModel.PLArea);
break;
case 2:
earthKey.push('B类用地');
earthValue.push(d.gxhzvalueModel.ZJWYCount);
areaKey.push("B类用地");
areaValue.push(d.gxhzvalueModel.ZJWYArea);
break;
}
}
}
}
}
else if (key == "gxhzvalueModel") { //$('#' + key + '').html(val); $.each(d.gxhzvalueModel, function (index, value) {
if (index == 'TotalCount') { totalNum = '用地数量 (' + value + '块)';
}
if (index == 'WGYDCount') {
earthKey.push('C类用地');
earthValue.push(value);
}
if (index == 'YSWPCount') {
earthKey.push('D类用地');
earthValue.push(value);
} if (index == 'TCYDCount') {
earthKey.push('E类用地');
earthValue.push(value);
}
if (index == 'WGCount') { earthKey.push('F类用地');
earthValue.push(value);
}
if (index == 'WJCount') { earthKey.push('H类用地');
earthValue.push(value);
} if (index == 'TotalArea') { totalArea = '用地面积 (' + value + '亩)';
}
if (index == 'WGArea') { areaKey.push("F类用地");
areaValue.push(value);
}
if (index == 'WGYDArea') { areaKey.push("C类用地");
areaValue.push(value);
} if (index == 'TCYDArea') { areaKey.push("E类用地");
areaValue.push(value);
}
if (index == 'YSWPArea') { areaKey.push("D类用地");
areaValue.push(value);
} if (index == 'WJArea') { areaKey.push("H类用地");
areaValue.push(value);
} if (index == 'COMCount') { QYCount = '企业数量 (' + value + '家 )';
}
if (index == 'COMGSCount') { comKey.push("A类企业");
comValue.push(value);
}
if (index == 'COMGXCount') { comKey.push("B类企业");
comValue.push(value);
}
if (index == 'EmployeesCount') { var kRen = 0.001 * value;
var kRen02 = kRen.toFixed(3);
comKey.push("用工数量");
comValue.push(kRen02);
} if (index == 'OutPutValue') { valKey.push("工业产值");
valValue.push(value);
}
if (index == 'TotalTax') { valKey.push("税收总额");
valValue.push(value);
}
if (index == 'MudTax') { valKey.push("亩均税收");
valValue.push(value);
}
} );
} });
},
error: function () {
alert('error');
}
});
testChart1();
testChart2();
testChart3();
testChart4(); }
function testChart1() { var lerg = [''];
var lerg1 = '';
var dataX = new Array();
for (var i = 0; i < earthKey.length; i++) {
dataX.push(earthKey[i]);
}
var dataY = new Array();
for (var i = 0; i < earthValue.length; i++) {
dataY.push(earthValue[i]);
} //var obj = new creatObject('用地数量', '(单位:块)', lerg, lerg1, dataX, dataY,xLocation);
var obj = new creatObject(totalNum, '(单位:块)', lerg, lerg1, dataX, dataY, xLocation);
var myChart = echarts.init(document.getElementById('divChart1'));
myChart.setOption(obj);
}
function testChart2() {
var lerg = [''];
var lerg1 = '';
var dataX = new Array();
for (var i = 0; i < areaKey.length; i++) { dataX.push(areaKey[i]);
}
var dataY = new Array();
for (var i = 0; i < areaValue.length; i++) {
dataY.push(areaValue[i]);
} //var obj = new creatObject('用地面积', '(单位:亩)', lerg, lerg1, dataX, dataY,xLocation);
var obj = new creatObject(totalArea, '(单位:亩)', lerg, lerg1, dataX, dataY, xLocation);
var myChart = echarts.init(document.getElementById('divChart2'));
myChart.setOption(obj);
}
function testChart3() { var lerg = [''];
var lerg1 = '';
var dataX = new Array();
for (var i = 0; i < comKey.length; i++) { dataX.push(comKey[i]);
}
var dataY = new Array();
for (var i = 0; i < comValue.length; i++) {
dataY.push(comValue[i]);
} var obj = new creatObject(QYCount, '(单位:个/1000人)', lerg, lerg1, dataX, dataY, xLocation);
var myChart = echarts.init(document.getElementById('divChart3'));
myChart.setOption(obj);
}
function testChart4() { var lerg = [''];
var lerg1 = '';
var dataX = new Array();
for (var i = 0; i < valKey.length; i++) { dataX.push(valKey[i]);
}
var dataY = new Array();
for (var i = 0; i < valValue.length; i++) {
dataY.push(valValue[i]);
} var obj = new creatObject('工业产值', '(单位:亿元)', lerg, lerg1, dataX, dataY, xLocation);
var myChart = echarts.init(document.getElementById('divChart4')); myChart.setOption(obj); }
</script>
</head>
<body>
<div style="width:400px;">
<div id="divChart1" style="width:100%;height:300px;">
</div>
<div id="divChart2" style="width:100%;height:300px;">
</div>
<div id="divChart3" style="width:100%;height:300px;">
</div>
<div id="divChart4" style="width:100%;height:300px;">
</div>
</div>
</body>
</html>

3、Home控制器,后台代码

 [HttpPost]
public JsonResult GetHZdata(string officeId)
{
TotalHZModel model = new TotalHZModel();
List<GSValueModel> lists = new List<GSValueModel>();
HZModel hgModel = new HZModel();
hgModel.COMCount = ;
hgModel.COMGSCount = ;
hgModel.COMGXCount = ;
hgModel.EmployeesCount = ;
hgModel.MudTax = ;
hgModel.OutPutValue = ;
hgModel.PLArea = ;
hgModel.PLCount = ;
hgModel.TCYDArea = ;
hgModel.TCYDCount = ;
hgModel.TotalArea = ;
hgModel.TotalCount = ;
hgModel.TotalTax = ;
hgModel.WGArea = ;
hgModel.WGCount = ;
hgModel.WGYDArea = ;
hgModel.WGYDCount = ;
hgModel.WJArea = ;
hgModel.WJCount = ;
hgModel.YSWPArea = ;
hgModel.YSWPCount = ;
hgModel.ZJWYArea = ;
hgModel.ZJWYCount = ;
GSValueModel gsMoldel1 = new GSValueModel() { id=, IsoK=, text="选项1"};
GSValueModel gsMoldel2 = new GSValueModel() { id = , IsoK = , text = "选项2" };
lists.Add(gsMoldel1);
lists.Add(gsMoldel2);
model.gxhzvalueModel = hgModel;
model.GSValueList = lists;
return Json(model, JsonRequestBehavior.DenyGet);
}
  public class TotalHZModel
{
public List<GSValueModel> GSValueList { get; set; }
public HZModel gxhzvalueModel { get; set; }
}
    public class GSValueModel
{
public int id { get; set; }
public int IsoK { get; set; }
public string text { get; set; }
}
 public class HZModel
{ public Int32 PLCount { get; set; }
public Int32 YSWPCount { get; set; }
public Int32 WGCount { get; set; }
public Int32 WJCount { get; set; }
public Int32 ZJWYCount { get; set; }
public Int32 TCYDCount { get; set; }
public Int32 TotalCount { get; set; }
public Int32 WGYDCount { get; set; } public decimal WGArea { get; set; }
public decimal WJArea { get; set; }
public decimal PLArea { get; set; }
public decimal ZJWYArea { get; set; }
public decimal YSWPArea { get; set; }
public decimal TCYDArea { get; set; }
public decimal WGYDArea { get; set; }
public decimal TotalArea { get; set; }
public Int32 COMCount { get; set; }
public Int32 COMGSCount { get; set; }
public Int32 COMGXCount { get; set; }
public Int32 EmployeesCount { get; set; }
public decimal OutPutValue { get; set; }
public decimal TotalTax { get; set; }
public decimal MudTax { get; set; }
}

4、引用文件下载

链接:https://pan.baidu.com/s/1qROFfFQfk2Neu3ei3PGTzg      提取码:jdhg

eacharts 根据后台数据生成柱状图的更多相关文章

  1. Java读取数据库数据生成柱状图

    此案例是用swing显示数据的.须要引入jfreechart相关包.不同版本号可能包不同样.本人用的是 此案例在ssi框架下会报错,不用框架就没问题. Java后台逻辑代码: public class ...

  2. 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图

    如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?

  3. SpringBoot18 Swagger、API接口文档生成、WireMock、模拟后台数据

    1 Swagger 1.1 简述 前后端分离的项目需要前后端开发人员协同工作,后台开发人员需要给到前端开发者一套API文档:利用Swagger可以简单高效的帮助后台开发者生成RestfulAPI开发文 ...

  4. 在Vue中由后台数据循环生成多选框CheckBox时的注意事项

    多选框是一种非常常见的功能,有时候我们会根据后台返回的数据进行多选框渲染,之前做项目时遇到循环生成多选框时,v-model绑定的值会随着选中与取消改变,但页面却不会变化 的情况,后来测试了一下,发现多 ...

  5. 【POI】java服务生成List数据集合,后台服务生成xlsx临时文件,并将临时文件上传到腾讯云上

    场景: java服务生成List数据集合,后台服务生成xlsx临时文件,并将临时文件上传到腾讯云上 今日份代码: 1.先是一个变量,作为文件名 private static final String ...

  6. Java获取后台数据,动态生成多行多列复选框

    本例目标: 获取后台数据集合,将集合的某个字段,比如:姓名,以复选框形式显示在HTML页面 应用场景: 获取数据库的人员姓名,将其显示在页面,供多项选择 效果如下: 一.后台 查询数据库,返回List ...

  7. 使用Asp.net WebAPI 快速构建后台数据接口

    现在的互联网应用,无论是web应用,还是移动APP,基本都需要实现非常多的数据访问接口.其实对一些轻应用来说Asp.net WebAPI是一个很快捷简单并且易于维护的后台数据接口框架.下面我们来快速构 ...

  8. 【AS3】Flash与后台数据交换四种方法整理

    随着Flash Player 9的普及,AS3编程也越来越多了,所以这次重新整理AS3下几种与后台数据交换方法.1.URLLoader(URLStream)2.FlashRemoting3.XMLSo ...

  9. html5生成柱状图(条形图)

    <html> <canvas id="a_canvas" width="1000" height="700">< ...

随机推荐

  1. 【POJ3352】Road Construction(边双联通分量)

    题意:给一个无向图,问最少添加多少条边后能使整个图变成双连通分量. 思路:双连通分量缩点,缩点后给度为1的分量两两之间连边,要连(ans+1) div 2条 low[u]即为u所在的分量编号,flag ...

  2. 【MFC】Button控件和Picture Control的鼠标事件执行顺序

    1.Button控件鼠标事件执行顺序 (1) WM_LBUTTONDOWN (2) WM_LBUTTONUP (3) OnBnClickedButton1(); 2.Picture Control的鼠 ...

  3. ajax 分页(jquery分页插件pagination) 小例2

    封装成:myPagination.js// ajax分页 function sendAjax(flag, dataParam, url, callback) {//封装的ajax: var shus ...

  4. DBGridEH如何去表头?设置哪个属性

  5. LeetCode OJ--Search for a Range

    http://oj.leetcode.com/problems/search-for-a-range/ 要求复杂度为O(lgn),用二分查找的思想. #include <iostream> ...

  6. AC日记——【模板】最近公共祖先(LCA)洛谷 P3379

    题目描述 如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先. 输入输出格式 输入格式: 第一行包含三个正整数N.M.S,分别表示树的结点个数.询问的个数和树根结点的序号. 接下来N-1行每 ...

  7. Flink起步安装和使用

    下载安装 下载地址 下载对应操作系统和版本的flink  # 首先确认下Java环境 $ java -version  java version "1.8.0_111" Java( ...

  8. mysql 源码 jin-yang.github.io

    https://jin-yang.github.io/post/mysql-group-commit.html

  9. 邁向IT專家成功之路的三十則鐵律 鐵律六:求全求盈之道-佈施

    如果您只是在IT方面的專業技術與經驗相當高超,而不懂得在日常生活之中當一位俠義肝膽之人,來隨時隨地伸手幫助身旁需要幫助的人,那麼您只能算是一位有勇有謀但卻無智慧的匹夫罷了.既是匹夫那麼即便成功也會是短 ...

  10. 了解使用Android ConstraintLayout

    说明 Google I/O 2016 上发布了 ConstraintLayout, 简直是要变革 Android 写界面方式. 于是第二天我立即找到相关文档尝试, 这是官方提供的 Codelab 项目 ...