echarts图表与列表文字结合导出word文档

时间:2022-11-24 16:27:04 作者:壹号 字数:5594字

导出word文件需要jar包

Echarts图表可以生成BASE64编码

functioninita(hotWords,word,xData,hotWordtwo) {

require( [

'echarts',

'echarts/chart/line', // 按需加载所需图表,如需动态类型切换

// alert(xData);

//$(require.config({

'echarts' : 'js/echarts',

'echarts/chart/line' : 'js/echarts', //饼状图

class=

paths: {

'echarts/chart/bar' : 'js/echarts'//柱状图 } });

功能,别忘了同时加载相应图表 'echarts/chart/bar'

], function (ec) {

// 基于准备好的dom,初始化echarts图表

varmyChart = ec.init(document.getElementById(word));

var option = {

grid :{ },

tooltip : { trigger: 'axis' },

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, animation :false, legend: {

data:['来电量','昨日数据对比'] },

xAxis : [

{ type :'category', data :xData

} ], yAxis : [

{ type :'value',

name : '来电量', axisLabel : {

formatter: '{value}' } }, { type :'value',

name : '昨日数据对比', axisLabel : {

formatter: '{value}%' } } ], series :[

{

name:'来电量', type:,

data:getPlatData(hotWords)

},

}

{

name:'昨日数据对比', type:, yAxisIndex: 1,

data:getPlatData(hotWordtwo) ] };

// 为echarts对象加载数据

myChart.setOption(option);

$().val(myChart.getDataURL('png')); // alert( myChart.getDataURL('png'))//获取base64编码 } );

}

获取base64编码图片后要传到后台 functionAllAreaWord()

{var date =$().val(); $.ajax({ type:'POST',

url:'briefing/exp', //用户请求数据的URL

data:+date++$().val()++$(2).val(),

beforeSend:function () { changeImg(); },

error:function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); },

success: function (data) { window.location.href

=<%=basePath%>briefing/expword?date=后台将base64编码图片保存session中在执行导出word }

}); }

后台处理将图片编码存到session中

@RequestMapping(value=)//简报生成echarts图表 public String exp(Model model,HttpServletRequest request){

String image1 = request.getParameter(); String image2 = request.getParameter(); String[] url = image1.split();

String[] url2 = image2.split(); String imageo=; String imaget=;

if(image1!=&&url.length>1){ }

if(image2!=null&&url2.length>1){ }

imaget=url2[1]; imageo=url[1];

request.getSession().setAttribute(SystemConstant.SESSION_IMGONE,

imageo);

…… 此处隐藏1220字 ……

} catch (Exception e) { e.printStackTrace(); } return doc; } /**

* 处理段落

* @paramparagraphList */ public

static

void

processParagraphs(ListparagraphList,Mapparam,CustomXWPFDocument doc){

if(paragraphList != null &¶graphList.size() > 0){ for(XWPFParagraphparagraph:paragraphList){