[java] JFreeChart에서 xy 차트 그리기

JFreeChart는 Java에서 사용할 수 있는 강력한 차트 라이브러리입니다. 이를 활용하여 XY 차트를 그려볼 것입니다.

필요한 라이브러리 추가

JFreeChart를 사용하기 위해 Maven 또는 Gradle을 사용하여 라이브러리를 추가해야합니다. 아래는 Maven을 사용하는 경우의 예시입니다.

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

XY 데이터 준비

XY 차트를 그리기 위해서는 XY 데이터가 필요합니다. 아래는 간단한 예시 데이터입니다.

import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

// XYSeriesCollection을 사용하여 데이터를 관리합니다.
XYSeriesCollection dataset = new XYSeriesCollection();

// XYSeries 객체를 생성하여 데이터를 추가합니다.
XYSeries series = new XYSeries("데이터셋 1");
series.add(1.0, 2.0);
series.add(2.0, 3.0);
series.add(3.0, 4.0);
dataset.addSeries(series);

차트 생성 및 그리기

데이터를 준비했다면, 이제 JFreeChart를 사용하여 XY 차트를 생성하고 그릴 수 있습니다.

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;

// JFreeChart를 사용하여 XY 차트를 생성합니다.
JFreeChart chart = ChartFactory.createXYLineChart(
    "XY 차트",                    // 차트 제목
    "X축",                        // X축 레이블
    "Y축",                        // Y축 레이블
    dataset,                      // 데이터셋
    PlotOrientation.VERTICAL,     // 차트 방향
    true,                         // 범례 표시 여부
    true,                         // 도구 모음 표시 여부
    false                         // URL 링크 사용 여부
);

// ChartFrame을 사용하여 차트를 화면에 표시합니다.
ChartFrame frame = new ChartFrame("차트", chart);
frame.pack();
frame.setVisible(true);

이제 위의 코드를 실행하면 XY 차트가 표시될 것입니다.

차트에 스타일 추가하기

JFreeChart를 사용하여 그린 차트에 스타일을 추가할 수도 있습니다. 예를 들어 차트 배경색을 변경해보겠습니다.

import org.jfree.chart.plot.XYPlot;
import org.jfree.ui.RectangleInsets;

// XYPlot을 사용하여 차트의 플롯 영역에 스타일을 추가합니다.
XYPlot plot = (XYPlot) chart.getPlot();
plot.setBackgroundPaint(Color.lightGray);  // 배경색 설정
plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));  // 플롯 영역 간격 설정

위의 코드를 실행하면 차트의 배경색이 변경되어 표시될 것입니다.

결론

JFreeChart를 사용하여 Java에서 XY 차트를 그릴 수 있습니다. 데이터를 준비하고 차트를 생성하는 간단한 예제를 살펴보았습니다. 더 많은 스타일과 구성 옵션을 사용하여 차트를 사용자 정의할 수 있습니다. 자세한 내용은 JFreeChart의 문서를 참고하시기 바랍니다.

참고 자료

JFreeChart 공식 웹사이트: http://www.jfree.org/jfreechart/