本篇文章主要介绍,如何使用Apache POI组件生成折线图导出到word文档中,具体步骤看下文。

一、实现效果

Java使用POI技术生成折线图导出到word文档中,最终生成的折线图如下所示:

二、环境准备

  • 编程语言:Java
  • 第三方依赖:Apache POI

Apache POI依赖代码如下所示:

<dependencies><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-scratchpad</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.apache.xmlbeans</groupId><artifactId>xmlbeans</artifactId><version>3.1.0</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>ooxml-schemas</artifactId><version>1.4</version></dependency>
</dependencies>

三、具体代码

POI生成折线图代码如下所示(代码中几乎每个语句都写有注释,方便阅读和理解):

package com.gitee.zhuyb.chart;import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.util.Units;
import org.apache.poi.xddf.usermodel.chart.*;
import org.apache.poi.xwpf.usermodel.XWPFChart;
import org.apache.poi.xwpf.usermodel.XWPFDocument;import java.io.FileOutputStream;
import java.io.IOException;/*** @version 1.0.0* @Description: poi生成折线图* @Date: 2021/12/25 18:14* @Copyright (C) ZhuYouBin*/
public class LineChart {public static void main(String[] args) throws Exception {// 1、创建word文档对象XWPFDocument document = new XWPFDocument();// 2、创建chart图表对象,抛出异常XWPFChart chart = document.createChart(15 * Units.EMU_PER_CENTIMETER, 10 * Units.EMU_PER_CENTIMETER);// 3、图表相关设置chart.setTitleText("使用POI创建的折线图"); // 图表标题chart.setTitleOverlay(false); // 图例是否覆盖标题// 4、图例设置XDDFChartLegend legend = chart.getOrAddLegend();legend.setPosition(LegendPosition.TOP); // 图例位置:上下左右// 5、X轴(分类轴)相关设置XDDFCategoryAxis xAxis = chart.createCategoryAxis(AxisPosition.BOTTOM); // 创建X轴,并且指定位置xAxis.setTitle("日期(年月)"); // x轴标题String[] xAxisData = new String[] {"2021-01","2021-02","2021-03","2021-04","2021-05","2021-06","2021-07","2021-08","2021-09","2021-10","2021-11","2021-12",};XDDFCategoryDataSource xAxisSource = XDDFDataSourcesFactory.fromArray(xAxisData); // 设置X轴数据// 6、Y轴(值轴)相关设置XDDFValueAxis yAxis = chart.createValueAxis(AxisPosition.LEFT); // 创建Y轴,指定位置yAxis.setTitle("粉丝数(个)"); // Y轴标题Integer[] yAxisData = new Integer[]{10, 35, 21, 46, 79, 88,39, 102, 71, 28, 99, 57};XDDFNumericalDataSource<Integer> yAxisSource = XDDFDataSourcesFactory.fromArray(yAxisData); // 设置Y轴数据// 7、创建折线图对象XDDFLineChartData lineChart = (XDDFLineChartData) chart.createData(ChartTypes.LINE, xAxis, yAxis);// 8、加载折线图数据集XDDFLineChartData.Series lineSeries = (XDDFLineChartData.Series) lineChart.addSeries(xAxisSource, yAxisSource);lineSeries.setTitle("粉丝数", null); // 图例标题lineSeries.setSmooth(true); // 线条样式:true平滑曲线,false折线lineSeries.setMarkerSize((short) 6); // 标记点大小lineSeries.setMarkerStyle(MarkerStyle.CIRCLE); // 标记点样式// 9、绘制折线图chart.plot(lineChart);// 10、输出到word文档FileOutputStream fos = new FileOutputStream("H:\\poi\\lineChart.docx");document.write(fos); // 导出word// 11、关闭流fos.close();document.close();}}

以上,就是Java使用POI生成折线图导出到word文档(折线图)的步骤。

Java使用POI生成折线图导出到word文档(折线图)相关推荐

  1. Poi 如何使用Java和POI技术生成折线图,柱状图,饼状图导出到word文档

    这篇文章主要介绍POI生成图表并导出word文档的基本操作.主要介绍三种图表:折线图.柱状图.饼状图. 一.效果展示 使用Java和POI技术生成的折线图,柱状图,饼状图的效果如下图所示: 二.环境准 ...

  2. Java使用POI生成饼状图导出到word文档(饼状图)

    本篇文章主要介绍,如何使用Apache POI组件生成饼状图导出到word文档中,具体步骤看下文. 一.实现效果 Java使用POI技术生成饼状图导出到word文档中,最终生成的饼状图如下所示: 二. ...

  3. Java使用POI生成柱状图导出到word文档(柱状图)

    本篇文章主要介绍,如何使用Apache POI组件生成柱状图导出到word文档中,具体步骤看下文. 一.实现效果 Java使用POI技术生成柱状图导出到word文档中,最终生成的柱状图如下所示: 二. ...

  4. java导出html word文档_java生成带html样式的word文件

    最近在项目中需要将通过富文本编辑器处理过的文字转换为Word,查了很久,大家通常的解决办法是使用Jacob或POI等组件直接生成Word,但是都无法将富文本编辑器处理过的文字保留样式并保存为Word, ...

  5. 前端报表导出成word文档(含echarts图表)

    前端报表导出成word文档(含echarts图表) 一.问题背景: 前端vue做的各种维度的报表,原来是通过前端整体截屏导出成PDF,但部分报表在遇到跨页时会被截断,客户体验极差.然后又考虑客户可能需 ...

  6. js将html转为word文档,js将html导出到word文档(含echarts图表)

    需求 在开发项目途中遇到了一个需求,就是将一个整个HTML界面导出到word文档,其中包含了echarts图表,经过一番折腾,终于完成了~~~(鸡肋),过程中用到了几个插件,总结了一下几个步骤,希望可 ...

  7. 基于xdocreport导出复杂word文档,专业避坑指南

    如果你要先问我为什么要导出word?那么请你走开,你个杠精! 在完成这个功能时花费了大量的时间查阅资料,发现能满足导出复杂word文档的工具只有xdocreport,如果有其他的工具欢迎分享.废话不多 ...

  8. 导出到word文档--带有表格

    有位网友说导出到word文档时原来的表格样式没有了,我认为是你在导出到word时没有设置word样式,之前我没有导出到word的太多经验,Excel导入导出是做了些,呵呵^_^ 下面给个导出到word ...

  9. 导出备忘录Word文档

    这里写自定义目录标题 /*** 导出备忘录Word文档** @param id* @return*/@Overridepublic String exportWordMemo(Long id) thr ...

最新文章

  1. 速度、准确率与泛化性能媲美SOTA CNN,Facebook开源高效图像Transformer
  2. netstat常用命令
  3. php对mongo操作问题
  4. 台式计算机攒机报告,计算机装机报告.doc
  5. Linux 文件夹含义(转)
  6. Android系列之Fragment(二)----Fragment的生命周期和返回栈
  7. svpwm仿真_案例12:三相三线PWM整流仿真建模
  8. 使用PowerShell配置Microsoft Teams
  9. 树莓派3B+,我要跑.NET CORE
  10. ping命令执行过程详解
  11. ubuntu 解析控制 PS4手柄
  12. php项目代码交接文档,接手项目担当运维,前技术团队应该提供哪些正当规范的交接文档和技术支持...
  13. 课程作业记录3:瑞利衰落信道下的BPSK/QPSK/16QAM的Matlab仿真
  14. APP开发者常用的4种推广渠道
  15. mysql中将数字转化成汉字 基础
  16. Linux—虚拟机下如何查看系统是多少位的?32 or 64
  17. 【多式联运】基于模拟退火优化遗传算法求解多式联运运输问题(含碳政策)含Matlab代码
  18. 自己写一个strcmp函数(C++)
  19. python和c 情侣网名_带符号的qq情侣网名 好听的情侣网名大全
  20. Tekton 流水线发布首个官方 Beta 版本

热门文章

  1. 关闭计算机开机自启动,电脑关机后自动开机
  2. 台式网卡计算机,台式机网卡,台式机网卡在哪里
  3. Android基础入门教程——2.2.3 TableLayout(表格布局)
  4. 富士施乐Fuji Xerox DocuPrint 204A 驱动
  5. 2022-2027年中国多聚膜敷料行业发展前景及投资战略咨询报告
  6. 手把手教你制作用户旅程图 产品经理千万不能错过
  7. 在Markdown中使用Mermaid来绘制用户旅程图
  8. 南瑞服务器在线客服,国电南瑞服务器NSC332远动通讯管理器
  9. 【高精度定位】RTK定位与RTD定位知识科普
  10. 东芝TLP5772光耦与SLM346兼容光耦的单通道隔离驱动器比较