[java] JFreeChart에서 Meter 차트 그리기
JFreeChart는 Java에서 사용할 수 있는 강력한 차트 라이브러리입니다. 이 라이브러리를 사용하면 다양한 종류의 차트를 그릴 수 있으며, 그 중에 하나가 Meter 차트입니다.
Meter 차트는 주로 게이지와 같은 모양으로 표현되며, 값의 범위에 따라 색상을 변경하여 시각적으로 표현할 수 있습니다.
JFreeChart 설치
먼저 JFreeChart를 설치해야 합니다. 다음과 같이 Maven을 사용하여 의존성을 추가할 수 있습니다.
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.5.3</version>
</dependency>
Meter 차트 그리기
Meter 차트를 그리기 위해서는 MeterPlot
클래스를 사용해야 합니다. 다음은 기본적인 Meter 차트를 그리는 예제입니다.
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.MeterPlot;
import org.jfree.data.Range;
import org.jfree.data.general.DefaultValueDataset;
import javax.swing.*;
import java.awt.*;
public class MeterChartExample extends JFrame {
public MeterChartExample() {
// 데이터셋 생성
DefaultValueDataset dataset = new DefaultValueDataset(75.0); // 초기 값은 75.0
// 차트 생성
MeterPlot plot = new MeterPlot(dataset);
plot.setMeterAngle(180); // Meter의 각도 설정 (0~360)
plot.setRange(new Range(0, 100)); // Meter의 값 범위 설정
plot.setDialShape(DialShape.PIE); // Meter의 모양 설정
plot.setNeedlePaint(Color.RED); // 니들의 색상 설정
JFreeChart chart = new JFreeChart(plot);
chart.setBackgroundPaint(Color.WHITE);
// 차트를 패널에 추가
ChartPanel panel = new ChartPanel(chart);
panel.setPreferredSize(new Dimension(400, 400));
// 프레임에 패널 추가
add(panel);
// 프레임 설정
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("Meter Chart Example");
pack();
setLocationRelativeTo(null);
}
public static void main(String[] args) {
// 차트를 보여줄 프레임 생성
SwingUtilities.invokeLater(() -> new MeterChartExample().setVisible(true));
}
}
위의 예제에서는 DefaultValueDataset
을 사용하여 데이터셋을 생성하고, MeterPlot
을 사용하여 차트를 생성합니다. MeterPlot
의 다양한 설정을 통해 Meter 차트의 모양과 범위, 니들의 색상 등을 변경할 수 있습니다.
결과 확인
위의 예제를 실행하면 다음과 같은 Meter 차트를 볼 수 있습니다.
Meter의 초기 값이 75.0이며, 값이 증가하면 초록색에서 노란색, 빨간색으로 변경되는 것을 확인할 수 있습니다.
결론
JFreeChart를 사용하면 Java로 간단하고 멋진 Meter 차트를 그릴 수 있습니다. Meter 차트는 데이터의 범위를 시각적으로 표현할 때 유용하게 사용될 수 있으므로, 프로젝트에서 필요한 경우 JFreeChart를 활용해보세요.