2012-03-21 2 views
4
는 기본적으로 나는 다음과 같은 기사에 매우 유사한 문제에 봉착

: 대신 버전의 차이를 제외하고 http://www.jfree.org/phpBB2/viewtopic.php?t=24713JFreeChart는 - 파이 차트의 라벨을 개선하는 방법

을 레이블에 대 한 내 결과는 3 흡사하다 파이 차트에서 첫 번째 차트 (줄 당 더 많은 공간 - 넓은 줄)를 선호하여 다음 줄로 빨리 감쌀 필요가 없습니다. 나는 레이블의 크기를 늘리기 위해 생각할 수있는 모든 것을 시도했지만 아무것도 작동하지 않는 것 같습니다.

필자의 주된 생각은 레이블이 쓰여지는 곳을 조정하고 소스 디버깅을 통해 상자의 크기를 늘릴 수 있었지만 실제 문자열은 확장 할 수 없었습니다. 나는 일종의 구성을 통해 소스를 편집하지 않고 그것을 할 수있는 방법을 찾지 못했고 그때조차도 텍스트를 적절하게 조정할 수 없었습니다. 그리고 많은 노력이 들었습니다. 코드는 둘 다 같은 위치에 있지 않습니다.

원형 차트를 설정하는 방법에 대한 제안으로 위의 기사에서 설명한 그림과 같은 레이블이 마지막 차트보다 첫 번째 차트와 더 비슷하게 작동합니다. 게시물에서 제안 된 내용을 수행했습니다.

plot.setInteriorGap(0.02); 
plot.setMaximumLabelWidth(0.20); 
plot.setLabelLinkStyle(PieLabelLinkStyle.CUBIC_CURVE); 

실제 효과가 없습니다. 최신 버전에서는 기본값이 CUBIC_CURVE가 아닙니다. setInteriorGap은 약간 개선되었지만 최소한이었습니다. 그리고 다른 라인은 아무 것도하지 않았습니다.

실제로 문제가되는 부분은 생성 된 차트의 왼쪽과 오른쪽에 얼마나 많은 공백이 있는지입니다. 어떻게 든 그 공간을 사용할 수 있다면 좋을 것입니다.

답변

0

첫 번째 문제는 확실하지 않습니다. 그러나, 나는 남은 공백에 관해서해야할 일에 관해서 약간의 생각을 가지고있다. 당신이 이미지에 차트를 변환하는 경우

, 다음을 통해 주위의 공백을 트리밍 시도 할 수 있습니다 :

BufferedImage chartImage = chart.createBufferedImage(width, height); 
chartImage = chartImage.getSubImage(howMuchToTrimOnLeft, howMuchtoTrimOnTop, width - howMuchToTrimOnLeft - howMuchToTrimOnRight, height - howMuchtoTrimOnTop - howMuchToTrimOnBottom); 

chartImage을 결과하는 것은 손질 버전을 포함합니다. 초기 너비 및 높이 값을 차트가 차지할 영역의 크기보다 크게 설정 한 다음 크기를 줄입니다.

관련 문제