> Java > java지도 시간 > JPanel 내에서 JFreeChart의 크기를 어떻게 사용자 정의할 수 있습니까?

JPanel 내에서 JFreeChart의 크기를 어떻게 사용자 정의할 수 있습니까?

DDD
풀어 주다: 2024-12-14 08:40:12
원래의
816명이 탐색했습니다.

How Can I Customize JFreeChart's Size within a JPanel?

JPanel에 대한 JFreeChart 크기 사용자 정의

JPanel에서 JFreeChart의 기본 크기가 항상 최적이 아닐 수도 있습니다. 크기를 맞춤설정하는 방법은 다음과 같습니다.

1. 생성자에서 기본 크기 지정:

JPanel graph = new JPanel(new GridLayout());
graph.add(new ChartPanel(chart, 500, 300));
로그인 후 복사

2. setPreferredSize()

ChartPanel cp = new ChartPanel(chart);
cp.setPreferredSize(new Dimension(500, 300));
로그인 후 복사

호출 3. getPreferredSize() 재정의

@Override
public Dimension getPreferredSize() {
    return new Dimension(w, h);
}
로그인 후 복사

4. 컨테이너 레이아웃 선택

JPanel의 FlowLayout은 크기 조정에 적합하지 않은 반면, JFrame의 BorderLayout은 동적 크기 조정을 허용합니다.

5. 다른 방법

  • setMaximumDrawHeight() 및 setMaximumDrawWidth()는 차트의 그리기 가능 영역을 제한합니다.
  • setZoomOutFactor()는 차트를 요인.

예:

public void generateChart() {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    //set the values of the chart
    for(int i=0; i<8; i++)
    {
        dataset.setValue(income_array[i], "Income",
            Double.toString(percent_array[i]));
    }

    JFreeChart chart = ChartFactory.createBarChart(
        "Required Annual Income for a Variety of Interest Rates",
        "Percent", "Income", dataset, PlotOrientation.VERTICAL,
        false,true, false);
    ChartPanel cp = new ChartPanel(chart, 500, 300);

    chart.setBackgroundPaint(Color.white);
로그인 후 복사

위 내용은 JPanel 내에서 JFreeChart의 크기를 어떻게 사용자 정의할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿