2010-07-27 3 views
1

Я рисую график, используя графику Java 2d (т. Е. Рисование и заполнение прямоугольников) прямо на JFrame из набора значений, хранящихся в Arraylist. Но когда ArrayList имеет очень большое количество значений (может даже увеличиться до 3500), чертеж сжат - где граф кажется менее информативным, и даже метки на оси X не отображаются. Есть ли способ сделать график отображаемым на нескольких страницах по-разному (например, ограничивать, чтобы страница могла отображать до 100 значений - оставшиеся на разных страницах, где пользователь может перемещаться по страницам).Рисование 2D-диаграмм Java для нескольких видов или панелей или горизонтальной прокрутки

Как я могу подойти к этому типу ситуации? Есть ли какие-либо штабелированные макеты, которые я могу использовать? Могу ли я использовать панели? Но тогда я могу сделать половину пути в панелях (так как граф рисуется внутри цикла - пока элементы arraylist не будут прочитаны)? Или у меня есть прокручиваемая панель? В настоящее время я рисую все вручную, не используя графический интерфейс перетаскивания в NetBeans.

По достоинству оцените любые идеи, предложения и идеи.

Большое спасибо заранее

ответ

1

Быстрое решение является просто поставить панель в JScrollPane. Вы также можете использовать card layout. Просто поместите график на n страниц и покажите 1/n часть графика на каждой странице. Это должно быть относительно легко, так как вы сами рисуете график. Честно говоря, вам даже не нужен макет карты для того, что вы делаете. Когда кнопка нажата, просто сообщите своей диаграмме о том, какую часть графика отобразить, и обновите ее соответствующим образом.

Другой вариант - использовать графическую библиотеку вместо создания диаграммы вручную. JFreeChart - широко используемая библиотека, которая позволяет пользователю увеличивать и уменьшать масштаб диаграммы.

 Смежные вопросы

  • Нет связанных вопросов^_^