最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java導出Echarts圖表的示例代碼(柱狀圖/餅形圖/折線圖)

 更新時間:2025年06月11日 10:59:30   作者:cccl.  
這篇文章主要為大家詳細介紹了java導出Echarts圖表的示例代碼,包括柱狀圖,餅形圖,折線圖等,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下

1、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>

2、導出word報告Controller

  @ApiOperation(value = "導出word報告", notes = "導出word報告")
   @GetMapping("/exportWord")
   public void exportWord(HttpServletResponse response) throws Exception {
      XWPFDocument word = commonService.exportWord();
         try {
             response.setHeader("Content-disposition",
            "attachment;filename=" + new String("analysis_report.doc".getBytes(), "utf-8"));
              response.setContentType("application/x-msdownload");
               OutputStream os = response.getOutputStream();
                 word.write(os);
                 os.close();
        } catch (IOException e) {
            logger.info("文件下載出錯!");
        }
    }

3、service

//導出word報告
XWPFDocument  exportWord() throws Exception;

4、servicelmpl

package com.iecas.satresource.service.impl;
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;
@Override
public XWPFDocument exportWord() {
    // 1、創(chuàng)建word文檔對象
    XWPFDocument doc = new XWPFDocument();
    XWPFParagraph para;
    XWPFRun run;
     //2.// x軸標題
     String name = " ";
      // 3、X軸(分類軸)數(shù)據(jù)
   String[] xAxisData = new String[] {
            "2022-01","2022-02","2022-03","2022-04","2022-05","2022-06",
            "2022-07","2022-08","2022-09","2022-10","2022-11","2022-12",
    };
        yAxis.setTitle("流量(個)"); // Y軸標題
    yAxis.setCrossBetween(AxisCrossBetween.BETWEEN); // 設置圖柱的位置:BETWEEN居中
     // 4、y軸數(shù)據(jù)
    Integer[] yAxisData = new Integer[]{
            20, 37, 21, 75, 79, 118,
            29, 112, 51, 85, 101, 89
    };
 //如一次性導出多個ECharts柱形圖可創(chuàng)建多個方法進行調(diào)用創(chuàng)建,如果數(shù)據(jù)類型不一樣可在創(chuàng)建工具類創(chuàng)建多個方法進行調(diào)用
    wordUtil.WordReadZc(doc, xAxisDate, yAxisDat4, name);
    return doc;
    }

5、工具類

package com.iecas.satresource.utils;
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.IOException;

/**
 * 導出ECharts柱形圖
 */
public class WordUtil {
 XWPFChart chart = null;
  public XWPFChart WordRead(XWPFDocument doc, String[] xAxisDate, Integer[] yAxisDate, String name) {
      try {
        this.chart = doc.createChart(5400000, 3600000);
    } catch (InvalidFormatException var15) {
        var15.printStackTrace();
    } catch (IOException var16) {
        var16.printStackTrace();
    }

    this.chart.setTitleOverlay(false);
    XDDFChartLegend legend = this.chart.getOrAddLegend();
    legend.setPosition(LegendPosition.TOP);
    XDDFCategoryAxis xAxis = this.chart.createCategoryAxis(AxisPosition.BOTTOM);
    //標題名稱
    xAxis.setTitle(name);
    //x數(shù)據(jù)
    XDDFCategoryDataSource xAxisSource = XDDFDataSourcesFactory.fromArray(xAxisDate);
    XDDFValueAxis yAxis = this.chart.createValueAxis(AxisPosition.LEFT);
    yAxis.setCrossBetween(AxisCrossBetween.BETWEEN);
    XDDFBarChartData barChart;
    Series barSeries;
    //y數(shù)據(jù)
      XDDFNumericalDataSource<Integer> yAxisSource1 = XDDFDataSourcesFactory.fromArray(yAxisDate);
        barChart = (XDDFBarChartData)this.chart.createData(ChartTypes.BAR, xAxis, yAxis);
        barChart.setBarDirection(BarDirection.COL);
        barSeries = (Series)barChart.addSeries(xAxisSource, yAxisSource1);
        barSeries.setTitle("", (CellReference)null);
        this.chart.plot(barChart);
            return this.chart;
  }
}

到此這篇關于java導出Echarts圖表的示例代碼(柱狀圖/餅形圖/折線圖)的文章就介紹到這了,更多相關java導出Echarts圖表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 基于SpringBoot+SpringAI+Ollama開發(fā)智能問答系統(tǒng)

    基于SpringBoot+SpringAI+Ollama開發(fā)智能問答系統(tǒng)

    在人工智能技術(shù)飛速發(fā)展的今天,大語言模型(LLM)已成為開發(fā)者工具箱中不可或缺的一部分,本文將介紹如何利用SpringBoot、SpringAI框架結(jié)合Ollama本地大模型服務,搭建一個完全運行在本地Windows環(huán)境下的智能問答系統(tǒng),有需要的可以了解下
    2025-06-06
  • Mybatis中實體類屬性與數(shù)據(jù)列表間映射方法介紹

    Mybatis中實體類屬性與數(shù)據(jù)列表間映射方法介紹

    這篇文章主要介紹了Mybatis中實體類屬性與數(shù)據(jù)列表間映射方法介紹,一共四中方法,供大家參考。
    2017-10-10
  • Java list foreach修改元素方式

    Java list foreach修改元素方式

    這篇文章主要介紹了Java list foreach修改元素方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Java對象的內(nèi)存布局全流程

    Java對象的內(nèi)存布局全流程

    這篇文章主要介紹了Java對象的內(nèi)存布局全流程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • elasticsearch索引index之engine讀寫控制結(jié)構(gòu)實現(xiàn)

    elasticsearch索引index之engine讀寫控制結(jié)構(gòu)實現(xiàn)

    這篇文章主要為大家介紹了elasticsearch索引index之engine讀寫控制結(jié)構(gòu)實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • Java利用完全二叉樹創(chuàng)建大根堆和小根堆

    Java利用完全二叉樹創(chuàng)建大根堆和小根堆

    大根堆是每個結(jié)點的值不大于他的父親結(jié)點的值;小根堆是每個結(jié)點的值不小于他的父親結(jié)點的值。本文將利用完全二叉樹創(chuàng)建大根堆和小根堆,感興趣的可以了解一下
    2022-08-08
  • JAVA解析XML字符串簡單方法代碼案例

    JAVA解析XML字符串簡單方法代碼案例

    這篇文章主要介紹了JAVA解析XML字符串簡單方法代碼案例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • Java空格替換逗號的實現(xiàn)示例

    Java空格替換逗號的實現(xiàn)示例

    在編程中,我們經(jīng)常需要對字符串進行各種處理,其中一個常見的需求是將字符串中的逗號替換為空格,本文主要介紹了Java空格替換逗號的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • java base64編碼、解碼的三種方式總結(jié)

    java base64編碼、解碼的三種方式總結(jié)

    這篇文章主要介紹了java base64編碼、解碼的三種方式,幫助大家更好的理解和學習Java,感興趣的朋友可以了解下
    2020-10-10
  • MyBatisPlus枚舉處理器的實現(xiàn)

    MyBatisPlus枚舉處理器的實現(xiàn)

    MyBatis-Plus?提供了枚舉處理器,讓我們可以優(yōu)雅地在數(shù)據(jù)庫字段和Java?枚舉之間進行轉(zhuǎn)換,而不需要手動處理映射關系,下面就來詳細的介紹一下,感興趣的可以了解一下
    2026-03-03

最新評論

延津县| 灵武市| 河南省| 拜城县| 安义县| 元朗区| 鹰潭市| 定远县| 子洲县| 星座| 洪湖市| 永兴县| 拉萨市| 甘泉县| 乌拉特后旗| 财经| 留坝县| 江孜县| 平江县| 资溪县| 三河市| 长阳| 册亨县| 井冈山市| 屏南县| 房山区| 安康市| 鄄城县| 财经| 巴南区| 万安县| 娱乐| 洞口县| 宜阳县| 屏边| 县级市| 鹤庆县| 开鲁县| 浦县| 文安县| 永兴县|