JFreeChart는 자바로 개발된 오픈 소스 차트 라이브러리입니다. 이 라이브러리를 사용하면 다양한 종류의 차트를 그릴 수 있습니다. 이번에는 JFreeChart를 사용하여 버블 차트를 그리는 방법에 대해 알아보겠습니다.
JFreeChart 설치
먼저 JFreeChart 라이브러리를 다운로드하여 설치해야 합니다. JFreeChart는 공식 웹사이트에서 다운로드할 수 있습니다. 압축 파일을 해제한 후, JFreeChart 라이브러리 jar 파일을 프로젝트의 클래스패스에 추가해야 합니다.
버블 차트 그리기
아래의 예제 코드는 JFreeChart를 사용하여 버블 차트를 그리는 방법을 보여줍니다.
import org.jfree.chart.*;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.xy.*;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
public class BubbleChartExample extends ApplicationFrame {
public BubbleChartExample(String title) {
super(title);
// 데이터셋 생성
XYSeriesCollection dataset = new XYSeriesCollection();
XYSeries series = new XYSeries("버블 차트");
// 데이터 추가
series.add(10, 20, 5);
series.add(20, 30, 10);
series.add(30, 40, 15);
dataset.addSeries(series);
// 차트 생성
JFreeChart chart = ChartFactory.createBubbleChart(
"버블 차트 예제", // 차트 제목
"X축", // X축 레이블
"Y축", // Y축 레이블
dataset, // 데이터셋
PlotOrientation.VERTICAL, // 차트 방향
true, // 범례 표시 여부
true, // 도구팁 표시 여부
false // URL 생성 여부
);
// 차트 스타일 변경
XYPlot plot = (XYPlot) chart.getPlot();
plot.setForegroundAlpha(0.65f);
// 차트 창에 추가
ChartPanel chartPanel = new ChartPanel(chart);
setContentPane(chartPanel);
}
public static void main(String[] args) {
BubbleChartExample example = new BubbleChartExample("JFreeChart 버블 차트 예제");
example.pack();
RefineryUtilities.centerFrameOnScreen(example);
example.setVisible(true);
}
}
예제 설명
위의 예제 코드에서는 BubbleChartExample
클래스를 만들고, ApplicationFrame
클래스를 상속받아 차트 창을 생성합니다.
데이터셋은 XYSeriesCollection
을 사용하여 생성하고, XYSeries
를 만들어 데이터를 추가합니다. 데이터는 X, Y 좌표 값과 버블의 크기로 구성됩니다.
ChartFactory.createBubbleChart
메소드를 사용하여 차트를 생성합니다. 이 메소드는 차트 제목, 축 레이블, 데이터셋 등을 인자로 받습니다.
차트의 스타일을 변경하기 위해 XYPlot
클래스의 인스턴스를 얻어옵니다. 그리고 setForegroundAlpha
메소드를 사용하여 차트의 투명도를 조정합니다.
마지막으로, ChartPanel
을 생성하여 차트 창에 추가합니다. main
메소드에서는 BubbleChartExample
클래스를 생성하고, 차트 창을 화면 중앙에 위치시킨 후 보여줍니다.
결론
이번 글에서는 JFreeChart를 사용하여 버블 차트를 그리는 방법에 대해 알아보았습니다. 다양한 차트를 그리기 위해 JFreeChart 라이브러리는 매우 유용하며, 자바 개발자에게 권장되는 라이브러리입니다. JFreeChart 공식 문서에서 더 많은 예제와 설정 옵션을 확인할 수 있습니다.