最近项目有个需求 :服务器定时跑数据生成分析图并导出word文档。附加word转pdf功能。
首先,关于服务器端(java)生成echars图片。
原理:通过无头浏览器调用js方法,使用服务端查出来的数据生成echars图片,此处使用了phantomjs作为无头浏览器(此开源项目目前处于终止状态,谷歌浏览器等都开发出类似功能,源码贡献者成员之一终止继续更新版本)。下附详细代码。
package com.gelpag.business.echarsWord.utils;
import org.apache.commons.lang.StringUtils;
import java.io.*;
import java.util.*;
/**
* Created by zhangzhiqiang on 2019/6/4.
*/
public class EchartGenerate {
private static final String JSpath = "/Users/zhangzhiqiang/Downloads/phantomjs/echarts-convert/echarts-convert1.js";
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("水");
list.add("温度");
List<String> alist = new ArrayList<String>();
alist.add("120");
alist.add("132");
alist.add("101");
alist.add("134");
alist.add("90");
alist.add("230");
alist.add("210");
alist.add("132");
alist.add("210");
alist.add("132");
alist.add("101");
alist.add("134");
//此处option直接从echars官网copy即可,需要什么样的类型的分析图就写什么
String optiona = "{tooltip : {trigger: 'axis'}, legend: {data:['" + listToString(list, "','") + "'] }, toolbox: {show : true, feature : {saveAsImage : {show: true} } }, calculable : true, xAxis : [{type : 'category', data : ['" + listToString(alist, "','") + "'] } ], yAxis : [{type : 'value'} ], series : [{name:'水', type:'bar', data:[2.

项目需求是服务器端利用Java定时生成ECharts分析图,并将其导出到Word文档中,同时提供Word转PDF功能。通过无头浏览器PhantomJS生成ECharts图片,使用poi-tl库简化POI操作导出Word,借助Aspose.Words商业库完成Word转PDF。

965

被折叠的 条评论
为什么被折叠?



