How to create chart in a worksheet in Java

EasyXLS Excel library can be used to export Excel files in Java. The library works with any Java SE application and without MS Excel installed.

Step 1: Download EasyXLS Excel Library for Java

To download the trial version of EasyXLS Excel Library, press the below button:

Download EasyXLS™ Excel Library for Java

If you already own a license key, you may login and download EasyXLS from your account.

Install the downloaded EasyXLS installer for v8.6 or earlier.

Step 2: License file setup

Step required for EasyXLS v9.0 or later.

If you are using a trial, generate a trial license file from EasyXLS trials page. The trial license is valid for 30-days.

If you own a license key, you may login to the account that purchased the license and generate the license file from:

Setup the license file into your project using these guidelines.

Step 3: Create a Java project

If don't have a project already, create a new Java project.

Step 4: Include EasyXLS library into project

EasyXLS.jar must be added to external libraries into your project for Eclipse or to your application CLASSPATH.

EasyXLS.jar can be found:
- Inside the downloaded archive at Step 1 for EasyXLS v9.0 or later
- Under installation path for EasyXLS v8.6 or earlier, in "Lib" folder.

Add EasyXLS library to CLASSPATH

Step 5: Run Java code that creates a chart in a worksheet

Execute the following Java code that exports a chart to Excel and the chart is placed inside a worksheet.

package testexceljava;

import EasyXLS.*;
import EasyXLS.Charts.*;

/* -----------------------------------------------------------
 | Tutorial 24
 | This tutorial shows how to create an Excel file in Java and
 | to create a chart in a worksheet.
 * ----------------------------------------------------------- */

public class Tutorial24{
    public static void main(String[] args) {
        try {
            System.out.println("Tutorial 24");

            // Create an instance of the class that exports Excel files
            ExcelDocument workbook = new ExcelDocument();

            // Create an worksheet

            // Get the table of data for the worksheet
            ExcelTable xlsTable1 = ((ExcelWorksheet)workbook.easy_getSheet("SourceData")).easy_getExcelTable();

            // Add data in cells for report header
            xlsTable1.easy_getCell(0, 0).setValue("Show Date");
            xlsTable1.easy_getCell(0, 1).setValue("Available Places");
            xlsTable1.easy_getCell(0, 2).setValue("Available Tickets");
            xlsTable1.easy_getCell(0, 3).setValue("Sold Tickets");

            // Add data in cells for chart report values
            xlsTable1.easy_getCell(1, 0).setValue("03/13/2005 00:00:00");
            xlsTable1.easy_getCell(1, 0).setFormat(EasyXLS.Constants.Format.FORMAT_DATE);
            xlsTable1.easy_getCell(2, 0).setValue("03/14/2005 00:00:00");
            xlsTable1.easy_getCell(2, 0).setFormat(EasyXLS.Constants.Format.FORMAT_DATE);
            xlsTable1.easy_getCell(3, 0).setValue("03/15/2005 10:00:00");
            xlsTable1.easy_getCell(3, 0).setFormat(EasyXLS.Constants.Format.FORMAT_DATE);
            xlsTable1.easy_getCell(4, 0).setValue("03/16/2005 00:00:00");
            xlsTable1.easy_getCell(4, 0).setFormat(EasyXLS.Constants.Format.FORMAT_DATE);

            xlsTable1.easy_getCell(1, 1).setValue("10000");
            xlsTable1.easy_getCell(2, 1).setValue("5000");
            xlsTable1.easy_getCell(3, 1).setValue("8500");
            xlsTable1.easy_getCell(4, 1).setValue("1000");

            xlsTable1.easy_getCell(1, 2).setValue("8000");
            xlsTable1.easy_getCell(2, 2).setValue("4000");
            xlsTable1.easy_getCell(3, 2).setValue("6000");
            xlsTable1.easy_getCell(4, 2).setValue("1000");

            xlsTable1.easy_getCell(1, 3).setValue("920");
            xlsTable1.easy_getCell(2, 3).setValue("1005");
            xlsTable1.easy_getCell(3, 3).setValue("342");
            xlsTable1.easy_getCell(4, 3).setValue("967");

            // Set column widths
            // Create a chart
            ExcelChart xlsChart = new ExcelChart("A10", 600, 300);
            xlsChart.easy_addSeries("=SourceData!$B$1", "=SourceData!$B$2:$B$5");
            xlsChart.easy_addSeries("=SourceData!$C$1", "=SourceData!$C$2:$C$5");
            xlsChart.easy_addSeries("=SourceData!$D$1", "=SourceData!$D$2:$D$5");

            // Add the chart to the first worksheet

            // Export Excel file
            System.out.println("Writing file C:\\Samples\\Tutorial24 - chart inside worksheet.xlsx.");
            workbook.easy_WriteXLSXFile("C:\\Samples\\Tutorial24 - chart inside worksheet.xlsx");

            // Confirm export of Excel file
            if (workbook.easy_getError().equals(""))
                System.out.println("File successfully created.");
                System.out.println("Error encountered: " + workbook.easy_getError());

            // Dispose memory
        catch (Exception ex) {

EasyXLS Excel libraries:

Excel Library for Java
full Java version to import, export or convert Excel files
Excel Writer for Java
Java version to create and export Excel files
Download EasyXLS™ Excel Library for Java

File formats:

Office 365
MS Excel 2021 - 2024
MS Excel 2007 - 2019
MS Excel 97 - 2003