[java] JFreeChart에서 Volume 차트 그리기
JFreeChart는 자바로 작성된 오픈 소스 차트 라이브러리입니다. 이 라이브러리를 사용하여 종목의 거래량을 나타내는 Volume 차트를 그려보겠습니다.
1. JFreeChart 라이브러리 추가하기
먼저, 프로젝트에 JFreeChart 라이브러리를 추가해야 합니다. Maven을 사용하는 경우 pom.xml 파일에 다음 의존성을 추가합니다:
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.5.3</version>
</dependency>
Gradle을 사용하는 경우 build.gradle 파일에 다음 의존성을 추가합니다:
dependencies {
implementation 'org.jfree:jfreechart:1.5.3'
}
2. 데이터 가져오기
Volume 차트를 그리기 위해 먼저 거래량 데이터를 가져와야 합니다. 이 예시에서는 간단히 배열로 표현한 데이터를 사용하였습니다:
double[] volumes = {5000, 6000, 4500, 3500, 4000, 5500, 6000};
3. 차트 그리기
JFreeChart를 사용하여 Volume 차트를 그릴 수 있습니다. 아래 예제 코드는 거래량 데이터를 이용하여 차트를 생성하고, 차트를 그리는 단계를 보여줍니다:
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.DefaultCategoryDataset;
public class VolumeChartExample {
public static void main(String[] args) {
double[] volumes = {5000, 6000, 4500, 3500, 4000, 5500, 6000};
// 데이터셋 생성
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for (int i = 0; i < volumes.length; i++) {
dataset.addValue(volumes[i], "거래량", "Day" + (i+1));
}
// 차트 생성
JFreeChart chart = ChartFactory.createBarChart("Volume Chart", "일자", "거래량", dataset);
// 차트를 윈도우에 표시
ChartFrame frame = new ChartFrame("Volume Chart", chart);
frame.setVisible(true);
frame.setSize(500, 500);
}
}
4. 실행 결과
위의 예제 코드를 실행하면 차트가 나타난 윈도우 창이 열리고, 일자별 거래량을 나타내는 Volume 차트를 보실 수 있습니다.
참고 자료: