[struts2]struts结合ECharts的用法
<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的用法的更多相关文章
- J2EE进阶(三)struts2 <s:action>标签的用法
J2EE进阶(三)struts2 <s:action>标签的用法 前言 使用action标签,可以允许在jsp页面中直接调用Action,(类似AJAX页面调用)在调用Action时候,可 ...
- 菜鸟学Struts2——Struts工作原理
在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...
- Struts2 Struts.xml DTD 说明
转自:http://blog.csdn.net/cuixiuqin1954/article/details/4228741 关于Struts2中的核心配置文件struts.xml,就其DTD(Docu ...
- struts2 struts.xml配置文件详解
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&quo ...
- [struts2]Struts遍历标签<s:iterator>总结 [转]
转至:http://blog.csdn.net/lufeng66/article/details/7338098 struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几 ...
- Struts2 struts.xml配置
<?xml version="1.0" encoding="GBK"?> <!--指定 Struts2 的DTD信息 DTD 指 Docume ...
- ECharts 的用法
1. ECharts的获得 官网: https://echarts.baidu.com/ 你可以通过以下几种方式获取 ECharts. 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求 ...
- ognl,jstl,struts2标签中符号#,$,%的用法
STRUTS2标签操作Map <s:iterator value="sundayMap"> <td colspan="7" ...
- Struts2 | struts.xml文件中使用method属性和通配符简化action标签和Action处理类的编写
转自:https://www.jianshu.com/p/310e89ee762d 在Struts2框架中,我们知道基本的Action标签只能实现一个url请求对应一个Action处理类.那么我们如果 ...
随机推荐
- Event Aggregator
/** * Created with JetBrains WebStorm. * User: 宇乔 * Date: 13-8-2 * Time: 下午3:01 * To change this tem ...
- 关于怎样拆毁Cuttheprice
最近我的chrome浏览器被一个叫cuttheprice的插件病毒感染了,总是弹出广告,真是让人抓狂,本来最近几天在复习算法,准备面试的,昨天忍了过去,今天实在受不了了,于是就干掉它吧.说干就干,刚开 ...
- nutch 生产者队列的大小如何控制 threadcount * 50
如果topN 设置为1000万 ,不会这1000万都放到QueueFeeder(内存)中,而是从文件系统中(hdfs)中迭代不断填充QueueFeeder.队列中默认存放 threadcount * ...
- 【重要版本】Firefly alpha beta v1.2.2 正式发布
原地址:http://bbs.gameres.com/thread_220175.html firefly 1.2.2 更新 更新内容: 功能添加 1.动态模块更新 2.部分b ...
- Docker 监控- Prometheus VS Cloud Insight
如今,越来越多的公司开始使用 Docker 了,2 / 3 的公司在尝试了 Docker 后最终使用了它.为了能够更精确的分配每个容器能使用的资源,我们想要实时获取容器运行时使用资源的情况,怎样对 D ...
- 介绍一个超好用的HICHARTS扩展插件
因为需要,所以HIGHCHARTS了解一下是很有必要的. 但原始应用确实效率不行. 刚好,现在有个需求是从一系列的JSON里抽出表格数据,再显示图形. jquery.highchartsTable.j ...
- js构造函数
使用函数做自动化 function createObj(nick, age){ var obj = { nick: nick, age: age, printName: function(){ con ...
- 知识总结: Activity的四种启动模式
通常情况下,一个应用有一个Task,这个Task就是为了完成某个工作的一系列Activity的集合.而这些Activity又被组织成了堆栈的形式.当一个Activity启动时,就会把它压入该Task的 ...
- 精通phthon的条件
1. 熟知主流硬件体系(x86, x64)2. 熟知 CPython 的具体实现,如若可能至少通读源码三遍以上3. 熟知每条 Python bytecode 如何被解释执行4. 熟知每条 Python ...
- 【原创翻译】The Case for the Reduced Instruction Set Computer
RISC机的例子 David A. Patterson 加州大学伯克利分校计算机科学系 David R. Ditzel 贝尔实验室计算科学研究中心 介绍 计算机体系结构最主要的目标之一就是设计比之前产 ...