2011-07-30 5 views
2

JPanel을 확장 한 다른 클래스의 통계 데이터를 그래프로 나타낼 필요가 있습니다. 지금 계획은 paintComponent를 사용하는 것과 같은 Graphics 클래스는 다음과 같습니다JPanel에서이 방법으로 그래프를 만들 수 있습니까?

public void paintComponent(Graphics g) { 
    super.paintComponent(g); 

    //create a rectangle to represent the outline of the graph 
    g.drawRect(300, 50, 400, 350); 

    //set up the datapoints 
    for(int i = 0; i < data.size(); i++) { 
     //put the datapoints where ever they need to go within this rectangle 
     g.drawOval(x, y, width, height); 
    } 
} 

어떤 이유로이 끔찍한인가? 더 중요한 것은, 내가 사용할 수 있지만 모를 멋진, 사용하기 쉬운 그래픽 라이브러리가 있는가?

감사합니다.

답변

3

코드는 아마도 타원이 집중됩니다 것을

for(int i = 0; i < data.size(); i++) { 
    g.drawOval(data.get(i).getX() - width/2, data.get(i).getY() - height/2, 
     width, height); 
} 

귀하의 x와 y 점을 배치 아닌, 나에게 확인을 보인다.

또한, 그래프로 표시된 점이 그래프의 도메인과 범위의 경계 내에 유지되도록 데이터를 변환하는 것이 좋습니다. 그렇지 않으면 사각형 외부에 타원이 생길 수 있습니다.

그래프 라이브러리에 대해 JFreeChart를 확인해보십시오. 태그 :

관련 문제