java服务端生成带echars图片的word

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近项目有个需求 :服务器定时跑数据生成分析图并导出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.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值