2016-09-13 3 views
1

저는 시각화를 위해 JChart2D를 사용하고 있습니다. X 축과 Y 축을 픽셀 단위로 같게하고 싶습니다. 그렇게함으로써 유클리드 거리에서 서로 얼마나 멀리 떨어져 있는지 볼 수 있습니다 (그림 참조). 지금과 같이 x 축은 더 확장됩니다. 그들은 이미 값의 측면에서 동일한 범위를 가지고 있습니다.픽셀을 기준으로 축 크기를 동일하게 만드는 방법은 무엇입니까?

프레임 크기는 현재 픽셀 값을 정의합니다. 즉, jFrame.setSize(800,600);입니다. 그런 다음 모든 것이 Chart2D가 크기를 조정하는 프레임 안에 동적으로 맞추어 공간을 만듭니다. 나는 수동으로 픽셀을 찾지 만 그건 어리 석다. 또한 클러스터가 많은 시나리오가 있으면 범례 줄이 줄 바꿈되어 차트 크기가 조정됩니다.

나는 많은 것을 봤지만 문서를 보았지만 해결책을 찾지 못했습니다.

그럼 프레임의 다른 항목과 독립적 인 차트를 고정 크기로 설정하려면 어떻게해야합니까?

이미지 예 : 그렇게함으로써

답변

0

의 포인트가

하지

정말 유클리드 거리의 각 서로 얼마나 멀리 볼 훨씬 쉽게, 유클리드 거리는 끝에서 계산중인 2 점의 위치를 ​​필요로하고 당신은 그것을 가지고 있습니다 ... 그렇지 않으면 y 캔버스에 무엇이든지 그릴 수 없게 될 것입니다 ..

캔버스를 통해 ViewPort를 구현할 수있는 또 다른 aproach는 줌 인/아웃 이미지에만 해당되며 tht는 사용자의 케이스가 아닙니다.

+0

"실제로, 유클리드 거리는 계산할 2 점의 위치가 필요합니다. 그렇지 않으면 캔버스에 무엇이든지 그릴 수 없습니다." I 너 나를 오해한다고 생각해. 나는 이것을 시각화에 사용한다. 각 점에는 개념적으로 원 안의 점의 양을 계산하는 보이지 않는 원이 그 주위에 있습니다. 현명한 계산은 문제가되지 않지만 축이 동일한 유클리드 거리 픽셀을 나타내지 않으면 인간에 대해 혼란 스럽습니다. 그럼 난 실제로 원이 타원을보고 있어요. 희망이 그것을 이해할 :) – Bjerrum

0

JFrame을 만들지 않고 나머지 200px의 x 범위에 표시되도록 rectangle이 아닌 것으로 주장한다면 무엇을 기대합니까? 회색 회색 이니?

예를 들어 달성 할 수 있습니다. GridBagLayout을 JFrame.getContentPane()으로 설정하고 두 개의 수직 셀 그리드를 정의하여 - 하나의 그리드는 600px x 600px이고 두 번째는 200px x 600px입니다. 하지만 두 번째 창에는 공백이 있습니다. HTH, Achim

관련 문제