<script src="http://echarts.baidu.com/build/dist/echarts-all.js"></script>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts图表
var myChart = echarts.init(document.getElementById('main'));
var pxlb= ['自评','初审','初评','终评'];
<%-- var option = {
tooltip: {
show: true
},
legend: {
data:['评审结果汇总']
},
xAxis : [
{
type : 'category',
data : ["共性评分","共性总分","专项评分","专项总分"]
}
],
yAxis : [
{
type : 'value'
}
],
series : [
{
"name":"分数",
"type":"bar",
"data":[
<s:iterator value="lsVevInfo" var="vinfo" status="st">
<s:property value="resultValue" />,
<s:property value="fullScore" />,
<s:if test="resultValue == 0">0</s:if>
<s:elseif test="resultValue != 0">
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<fmt:formatNumber value="${(resultValue)/(fullScore)*100}" pattern="0.00" />
</s:elseif>
<s:if test="!#st.Last">,
</s:if>
</s:iterator>
]
}
]
}; --%>

option = {
tooltip : {
trigger: 'axis',
axisPointer : { // 坐标轴指示器,坐标轴触发有效
type : 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
legend: {
data:['共性要求评分','专项要求评分','共性要求总分','专项要求总分']
},
toolbox: {
show : true,
orient: 'vertical',
x: 'right',
y: 'center',
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
xAxis : [
{
type : 'category',
data : pxlb
}
],
yAxis : [
{
type : 'value'
}
],
series : [
{
name:'共性要求评分',
type:'bar',
data:[<s:iterator value="revMap.keySet()" id="key" status='s'>
<s:iterator value="revMap.get(#key)" status='st'>
<s:if test="#st.index == 0">
<s:property value="resultValue" />
</s:if>
</s:iterator><s:if test="!#s.Last">,</s:if>
</s:iterator>]
},
{
name:'共性要求总分',
type:'bar',
data:[<s:iterator value="revMap.keySet()" id="key" status='s'>
<s:iterator value="revMap.get(#key)" status='st'>
<s:if test="#st.index == 0">
<s:property value="fullScore" />
</s:if>
</s:iterator><s:if test="!#s.Last">,</s:if>
</s:iterator>]
},
{
name:'专项要求评分',
type:'bar',
data:[<s:iterator value="revMap.keySet()" id="key" status='s'>
<s:iterator value="revMap.get(#key)" status='st'>
<s:if test="#st.index == 1">
<s:property value="resultValue" />
</s:if>
</s:iterator><s:if test="!#s.Last">,</s:if>
</s:iterator>]
},
{
name:'专项要求总分',
type:'bar',
data:[<s:iterator value="revMap.keySet()" id="key" status='s'>
<s:iterator value="revMap.get(#key)" status='st'>
<s:if test="#st.index == 1">
<s:property value="fullScore" />
</s:if>
</s:iterator><s:if test="!#s.Last">,</s:if>
</s:iterator>]
}
]
};

// 为echarts对象加载数据
myChart.setOption(option);
</script>

[struts2]struts结合ECharts的用法的更多相关文章

  1. J2EE进阶(三)struts2 <s:action>标签的用法

    J2EE进阶(三)struts2 <s:action>标签的用法 前言 使用action标签,可以允许在jsp页面中直接调用Action,(类似AJAX页面调用)在调用Action时候,可 ...

  2. 菜鸟学Struts2——Struts工作原理

    在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...

  3. Struts2 Struts.xml DTD 说明

    转自:http://blog.csdn.net/cuixiuqin1954/article/details/4228741 关于Struts2中的核心配置文件struts.xml,就其DTD(Docu ...

  4. struts2 struts.xml配置文件详解

    <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&quo ...

  5. [struts2]Struts遍历标签<s:iterator>总结 [转]

    转至:http://blog.csdn.net/lufeng66/article/details/7338098 struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几 ...

  6. Struts2 struts.xml配置

    <?xml version="1.0" encoding="GBK"?> <!--指定 Struts2 的DTD信息 DTD 指 Docume ...

  7. ECharts 的用法

    1. ECharts的获得 官网: https://echarts.baidu.com/ 你可以通过以下几种方式获取 ECharts. 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求 ...

  8. ognl,jstl,struts2标签中符号#,$,%的用法

    STRUTS2标签操作Map <s:iterator value="sundayMap">           <td colspan="7" ...

  9. Struts2 | struts.xml文件中使用method属性和通配符简化action标签和Action处理类的编写

    转自:https://www.jianshu.com/p/310e89ee762d 在Struts2框架中,我们知道基本的Action标签只能实现一个url请求对应一个Action处理类.那么我们如果 ...

随机推荐

  1. Event Aggregator

    /** * Created with JetBrains WebStorm. * User: 宇乔 * Date: 13-8-2 * Time: 下午3:01 * To change this tem ...

  2. 关于怎样拆毁Cuttheprice

    最近我的chrome浏览器被一个叫cuttheprice的插件病毒感染了,总是弹出广告,真是让人抓狂,本来最近几天在复习算法,准备面试的,昨天忍了过去,今天实在受不了了,于是就干掉它吧.说干就干,刚开 ...

  3. nutch 生产者队列的大小如何控制 threadcount * 50

    如果topN 设置为1000万 ,不会这1000万都放到QueueFeeder(内存)中,而是从文件系统中(hdfs)中迭代不断填充QueueFeeder.队列中默认存放 threadcount * ...

  4. 【重要版本】Firefly alpha beta v1.2.2 正式发布

    原地址:http://bbs.gameres.com/thread_220175.html firefly 1.2.2 更新 更新内容: 功能添加       1.动态模块更新       2.部分b ...

  5. Docker 监控- Prometheus VS Cloud Insight

    如今,越来越多的公司开始使用 Docker 了,2 / 3 的公司在尝试了 Docker 后最终使用了它.为了能够更精确的分配每个容器能使用的资源,我们想要实时获取容器运行时使用资源的情况,怎样对 D ...

  6. 介绍一个超好用的HICHARTS扩展插件

    因为需要,所以HIGHCHARTS了解一下是很有必要的. 但原始应用确实效率不行. 刚好,现在有个需求是从一系列的JSON里抽出表格数据,再显示图形. jquery.highchartsTable.j ...

  7. js构造函数

    使用函数做自动化 function createObj(nick, age){ var obj = { nick: nick, age: age, printName: function(){ con ...

  8. 知识总结: Activity的四种启动模式

    通常情况下,一个应用有一个Task,这个Task就是为了完成某个工作的一系列Activity的集合.而这些Activity又被组织成了堆栈的形式.当一个Activity启动时,就会把它压入该Task的 ...

  9. 精通phthon的条件

    1. 熟知主流硬件体系(x86, x64)2. 熟知 CPython 的具体实现,如若可能至少通读源码三遍以上3. 熟知每条 Python bytecode 如何被解释执行4. 熟知每条 Python ...

  10. 【原创翻译】The Case for the Reduced Instruction Set Computer

    RISC机的例子 David A. Patterson 加州大学伯克利分校计算机科学系 David R. Ditzel 贝尔实验室计算科学研究中心 介绍 计算机体系结构最主要的目标之一就是设计比之前产 ...