使用java在powerpoint中建立條形圖

概述

創建具有視覺吸引力的簡報對於有效溝通至關重要,而圖表是清晰表示數據的強大工具。因此,使用 Java 在 PowerPoint 中建立長條圖可讓開發人員自動執行此流程,從而節省時間並確保一致性。然而,在這篇文章中,我們將探討如何使用 Aspose.Slides for Java 以程式設計方式在 PowerPoint 簡報中產生長條圖。

條形圖產生器 API 安裝

首先,您需要安裝支援在 PowerPoint 中建立長條圖的庫。因此,本逐步指南將引導您完成整個過程。

因此,您可以在 pom.xml 檔案中包含以下依賴項。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>24.4</version>
    <classifier>jdk16</classifier>
</dependency>

另一個選項是下載 JAR 檔案。事實上,Aspose.Slides for Java 提供了全面的安裝指令和功能來建立和操作 PPTX/PPT 檔案。

使用 Java 在 PowerPoint 中建立長條圖 - 程式碼片段

現在,讓我們深入研究使用 Java 以程式設計方式在 PowerPoint 中建立長條圖的程式碼。

步驟如下:

  • 實例化表示 PPTX 檔案的 Presentation 類別。
  • 透過呼叫 getItem 方法存取第一張投影片。
  • 透過呼叫 addChart 方法新增具有預設資料的長條圖。
  • 透過呼叫 getChartDataWorkbook 方法取得圖表資料工作表。
  • 呼叫 add 方法來新增add新系列。
  • 現在透過呼叫 addDataPointForBarSeries 方法填入系列資料。
  • 呼叫 setFillType 方法設定係列的填滿顏色。
  • save 方法將使用長條圖儲存簡報。

以下程式碼範例示範如何使用此長條圖產生器 API 在 PowerPoint 中建立長條圖:

public class main
{
    public static void main(String[] args)
    {
        // 文檔目錄的路徑。
        String dataDir = "/Desktop/";
        // 如果目錄尚不存在,則建立該目錄。
        boolean IsExists = new File(dataDir).exists();
        if (!IsExists)
            new File(dataDir).mkdirs();
        // 實例化表示 PPTX 檔案的簡報類別。 
        Presentation pres = new Presentation();
        // 透過呼叫 get_Item 方法存取第一張幻燈片。 
        ISlide sld = pres.getSlides().get_Item(0);
        // 透過呼叫 addChart 方法來新增具有預設資料的條形圖。 
        IChart chart = sld.getShapes().addChart(ChartType.ClusteredColumn, 0, 0, 500, 500);
        // 使用自訂大小和位置設定圖表標題。
        chart.getChartTitle().addTextFrameForOverriding("Sample Title");
        chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
        chart.getChartTitle().setHeight(20);
        chart.setTitle(true);
        // 將第一個系列設定為“顯示值”。
        chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
        // 設定圖表資料表索引
        int defaultWorksheetIndex = 0;
        // 透過呼叫 getChartDataWorkbook 方法取得圖表資料工作表。 
        IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
        // 刪除預設產生的系列和類別
        chart.getChartData().getSeries().clear();
        chart.getChartData().getCategories().clear();
        int s = chart.getChartData().getSeries().size();
        s = chart.getChartData().getCategories().size();
        // 呼叫add方法新增系列。 
        chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.getType());
        chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.getType());
        // 新增類別
        chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
        chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
        chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
        // 取得第一個圖表系列
        IChartSeries series = chart.getChartData().getSeries().get_Item(0);
        // 現在透過呼叫 addDataPointForBarSeries 方法填入系列資料。 
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
        // 呼叫 setFillType 方法設定係列的填滿顏色。 
        series.getFormat().getFill().setFillType(FillType.Solid);
        // 採取第二個圖表系列
        series = chart.getChartData().getSeries().get_Item(1);
        // 現在正在填充系列數據
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
        series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));
        // 設定係列的填滿顏色
        series.getFormat().getFill().setFillType(FillType.Solid);
        // 系列.getFormat().getFill().getSolidFillColor().setColor(Color.GREEN);
        // 第一個標籤將顯示類別名稱
        IDataLabel lbl = series.getDataPoints().get_Item(0).getLabel();
        lbl.getDataLabelFormat().setShowCategoryName(true);
        lbl = series.getDataPoints().get_Item(1).getLabel();
        lbl.getDataLabelFormat().setShowSeriesName(true);
        // 顯示第三個標籤的值
        lbl = series.getDataPoints().get_Item(2).getLabel();
        lbl.getDataLabelFormat().setShowValue(true);
        lbl.getDataLabelFormat().setShowSeriesName(true);
        lbl.getDataLabelFormat().setSeparator("/");
        // 儲存方法將保存帶有條形圖的簡報。 
        pres.save(dataDir + "AsposeChart_out.pptx", SaveFormat.Pptx);
    }
}

輸出:

長條圖產生器

有關如何使用此庫的更多信息,您可以查看一些流行的平台,例如 Stack OverflowGitHub 進行社區討論和範例。

取得免費許可證

Aspose.Slides for Java 提供免費的臨時授權 來探索其功能。立即嘗試,看看它如何簡化您的簡報建立過程。

最後的接觸

透過 Aspose.Slides for Java,使用 Java 在 PowerPoint 中建立長條圖是一個簡單的過程。此 Java API 不僅可以節省時間,還可以提高簡報的品質。無論您是希望實現工作流程自動化的開發人員,還是只想將動態圖表新增到投影片中,此解決方案都是高效且有效的。

查看 API 文件API 參考資料以開始使用此條形圖產生器 API。透過 aspose.com 隨時了解最新新聞和功能。

請隨時聯繫我們

如果您有任何疑問,請隨時在我們的論壇上提問。

常見問題 – 常見問題解答

是否有免費試用版來嘗試 Aspose.Slides for Java?

是的,有一個免費的臨時許可證可供試用該庫。

有用的連結