2.5.1. 图表
通过脚本设置图表内容
位置 | 触发时机 | 可以获取的环境变量(参数) | 返回值 |
---|---|---|---|
报表->基本->内容->脚本->选择样例 | 报表打开时触发 | WebUserCurrentDocument | 类型:JSON对象含义:JSON表示的E-Char格式 |
示例代码:
/*查询数据库表,统计结果显示为饼图*/
(function () {
//定义一个数组
var nameList = [];
var clazzList = [];
var chineseList = [];
var mathsList = [];
try {
var sql = "select * from tlk_班级人数登记表";//查询表单数据
var service = Packages.cn.myapps.designtime.common.service.DesignTimeServiceFactory.resolve("cn.myapps.designtime.datasource.service.DataSourceDesignTimeService");
//var datas = queryByDSName("obpm2_testcase",sql);
var datas = service.queryDataSourceSQL("obpm2功能示 例", sql, "HdPeBqYwJyFyjHkhZu3");
if (datas != null) {
for (var iterator = datas.iterator(); iterator.hasNext();) {
var map1 = iterator.next();//取值
var name = map1.get("item_姓名");
var clazz = map1.get("item_班级");
var chinese = map1.get("item_语文");
var maths = map1.get("item_数学");
//往数组里塞值
nameList.push(new String(name));
clazzList.push(new String(clazz));
chineseList.push(new String(chinese));
mathsList.push(new String(maths));
}
}
} catch (e) { }
println("nameList4:" + nameList);
println("chineseList:" + chineseList);
var option = {
title: {
text: "个人成绩对比图",
},
tooltip: {
trigger: 'axis'
},
legend: {
data: nameList
},
toolbox: {
show: true,
feature: {
mark: { show: true },
dataView: { show: true, readOnly: false },
magicType: { show: true, type: ['line', 'bar'] },
restore: { show: true },
saveAsImage: { show: true }
}
},
calculable: true,
xAxis: [
{
type: 'category',
boundaryGap: false,
data: nameList
}
],
yAxis: [
{
type: 'value',
axisLabel: {
formatter: '{value}'
}
}
],
series: [
{
name: '语文成绩',
type: 'line',
data: chineseList,
markPoint: {
data: [
{ type: 'max', name: '最大值' },
{ type: 'min', name: '最小值' }
]
},
markLine: {
data: [
{ type: 'average', name: '平均值' }
]
}
},
{
name: '数学成绩',
type: 'line',
data: mathsList,
markPoint: {
data: [
{ type: 'max', name: '最大值' },
{ type: 'min', name: '最小值' }
]
},
markLine: {
data: [
{ type: 'average', name: '平均值' }
]
}
}
]
};
return option;
})()
文档更新时间: 2022-11-02 13:43 作者:admin