溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何用Java制作Excel散點圖?

發(fā)布時間:2020-05-29 10:21:04 來源:億速云 閱讀:239 作者:Leah 欄目:編程語言

這篇文章給大家分享的是用Java制作Excel散點圖的方法,相信大部分人都還沒學(xué)會這個技能,為了讓大家更加了解,給大家總結(jié)了以下內(nèi)容,話不多說,一起往下看吧。

散點圖是指在回歸分析中,數(shù)據(jù)點在直角坐標(biāo)系平面上的分布圖,表示因變量隨自變量而變化的大致趨勢,常用于比較跨類別的聚合數(shù)據(jù)。在excel中,支持創(chuàng)建散點圖來實現(xiàn)數(shù)據(jù)分析,本文將通過java程序代碼示例來介紹具體實現(xiàn)方法。

工具:Free Spire.XLS for Java (免費版)

注:可通過官網(wǎng)下載,解壓并將lib文件夾下的jar文件導(dǎo)入java程序。也可通過maven倉庫下載導(dǎo)入。這里可支持的圖標(biāo)類型多達70多種,如柱形圖、餅狀圖、折線圖、散點圖、混合圖、雷達圖、氣泡圖等等。本文以創(chuàng)建散點圖為例。

Java 代碼示例

import com.spire.xls.*;  
import com.spire.xls.core.IChartTrendLine;

public class ScatterChart {  
public static void main(String[] args) {  
//實例化Workbook類的對象,并獲取第一個工作表  
Workbook workbook = new Workbook();  
Worksheet sheet = workbook.getWorksheets().get(0);

    //設(shè)置列寬,工作表名  
    sheet.getCellRange("A1:B1").setColumnWidth(15f);;  
    sheet.setName("散點圖");  

    //添加圖表數(shù)據(jù)源  
    sheet.getCellRange("A1").setValue("城市化水平");  
    sheet.getCellRange("A2").setValue("10");  
    sheet.getCellRange("A3").setValue("15");  
    sheet.getCellRange("A4").setValue("17");  
    sheet.getCellRange("A5").setValue("25");  
    sheet.getCellRange("A6").setValue("35");  
    sheet.getCellRange("A7").setValue("40");  
    sheet.getCellRange("A8").setValue("38");  
    sheet.getCellRange("A10").setValue ("17");  
    sheet.getCellRange("A9").setValue ("24");  
    sheet.getCellRange("B1").setValue("耕地面積");  
    sheet.getCellRange("B2").setValue ("26780");  
    sheet.getCellRange("B3").setValue("24086");  
    sheet.getCellRange("B4").setValue ("20546");  
    sheet.getCellRange("B5").setValue ("15057");  
    sheet.getCellRange("B6").setValue ("11036");  
    sheet.getCellRange("B7").setValue ("12546");  
    sheet.getCellRange("B8").setValue("9854");  
    sheet.getCellRange("B9").setValue ("13506");  
    sheet.getCellRange("B10").setValue ("18756");  

    //創(chuàng)建散點圖  
    Chart chart = sheet.getCharts().add(ExcelChartType.ScatterMarkers);  
    chart.setDataRange(sheet.getCellRange("B2:B10"));  
    chart.setSeriesDataFromRange(false);  

    //指定散點圖在sheet中的位置  
    chart.setLeftColumn(4);  
    chart.setTopRow(1);  
    chart.setRightColumn(15);  
    chart.setBottomRow(25);  

    //添加圖表標(biāo)題、系列標(biāo)簽  
    chart.setChartTitle("城市化與耕地面積變化散點圖");  
    chart.getChartTitleArea().isBold(true);;  
    chart.getChartTitleArea().setSize(12);  
    chart.getSeries().get(0).setCategoryLabels(sheet.getCellRange("B2:B10"));  
    chart.getSeries().get(0).setValues(sheet.getCellRange("A2:A10"));  
    sheet.getCellRange("A1:B10").getStyle().setHorizontalAlignment(HorizontalAlignType.Center);  
    sheet.getCellRange("A1:B1").getStyle().getFont().isBold(true);  

    //添加趨勢線  
    IChartTrendLine trendLine = chart.getSeries().get(0).getTrendLines().add(TrendLineType.Exponential);  
    trendLine.setName("趨勢線");  

    //添加坐標(biāo)軸名稱  
    chart.getPrimaryValueAxis().setTitle("城市化水平(%)");  
    chart.getPrimaryCategoryAxis().setTitle("耕地面積(萬hm^2)");  

    //保存文檔  
    workbook.saveToFile("ScatterChart.xlsx",ExcelVersion.Version2010);  
    workbook.dispose();  
}  

}  
看完上述內(nèi)容,你們掌握用Java制作Excel散點圖的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI