[java] JFreeChart에서 데이터 CSV로 내보내기

JFreeChart는 Java에서 사용할 수 있는 강력한 차트 라이브러리입니다. 이 라이브러리를 사용하면 다양한 종류의 차트를 생성하고 데이터를 시각화할 수 있습니다. 이번 포스트에서는 JFreeChart를 사용하여 생성한 차트의 데이터를 CSV 파일로 내보내는 방법에 대해 알아보겠습니다.

1. Maven 종속성 추가하기

먼저, 프로젝트의 Maven 종속성에 JFreeChart를 추가해야 합니다. pom.xml 파일에 다음 내용을 추가합니다.

<dependency>
    <groupId>org.jfree</groupId>
    <artifactId>jfreechart</artifactId>
    <version>1.5.3</version>
</dependency>

2. 데이터셋 생성하기

CSV로 내보낼 데이터셋을 생성해야 합니다. 예를 들어, 다음과 같은 데이터셋을 생성해보겠습니다.

DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(100, "Java", "2019");
dataset.addValue(200, "Java", "2020");
dataset.addValue(300, "Java", "2021");

위 코드에서는 DefaultCategoryDataset을 사용하여 간단한 데이터셋을 생성했습니다. addValue 메서드를 사용하여 데이터를 추가할 수 있습니다.

3. 차트 생성하기

데이터셋을 사용하여 차트를 생성해야 합니다. 예를 들어, 다음과 같이 BarChart를 생성해보겠습니다.

JFreeChart chart = ChartFactory.createBarChart("Yearly Sales", "Year", "Sales", dataset, PlotOrientation.VERTICAL, true, true, false);

위 코드에서는 createBarChart 메서드를 사용하여 막대형 차트를 생성했습니다. 첫 번째 매개변수는 차트의 제목이고, 두 번째와 세 번째 매개변수는 X축과 Y축의 레이블입니다.

4. CSV로 내보내기

마지막 단계는 생성한 차트의 데이터를 CSV 파일로 내보내는 것입니다. 다음 코드를 사용하여 CSV 파일로 내보낼 수 있습니다.

try {
    ChartUtils.saveChartAsCSV("chart.csv", chart, dataset);
    System.out.println("CSV 파일이 성공적으로 생성되었습니다.");
} catch (IOException e) {
    System.out.println("CSV 파일 생성 중 에러가 발생했습니다.");
    e.printStackTrace();
}

위 코드에서는 ChartUtils.saveChartAsCSV 메서드를 사용하여 차트의 데이터를 CSV 파일로 저장했습니다. 첫 번째 매개변수는 파일 이름이고, 두 번째 매개변수는 생성한 차트입니다. 세 번째 매개변수는 데이터셋입니다.

마무리

JFreeChart를 사용하여 생성한 차트의 데이터를 CSV 파일로 내보내는 방법에 대해 알아보았습니다. 이를 통해 데이터를 다른 애플리케이션에서 사용하거나 분석할 수 있습니다. JFreeChart에는 다양한 차트 종류와 설정 옵션이 있으므로 필요에 따라 더 많은 기능을 활용해보세요.

참고자료