Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966

Рисовать график

05.12.2015, 08:17. Показов 2115. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, форумчане!
направьте пожалуйста в правильную сторону а то уже несколько дней ломаю голову но не совсем получается...
интересует такой вопрос: как можно построит/рисовать нижеприведенный график?
если можно поконкретнее.

З.Ы. все точки/координаты вычисляется по формулам...

заранее спасибо.
Миниатюры
Рисовать график  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.12.2015, 08:17
Ответы с готовыми решениями:

Рисовать на канве в NetBeans
Добрый вечер! Я нашел аналог TImage в NetBeans, но вот проблема, я не понимаю как на ней рисовать. Например: Graphics g =...

Рисовать при зажатии мыши
Подскажите, как рисовать до тех пор, пока зажата мышь? Делал MouseAdapter с такими переопределенными функциями: public void...

Класс с помощью которого можно рисовать прямоугольники
Есть класс с помощью которого можно рисовать прямоугольники, нужно сделать так что-бы в этих прямоугольниках был текст Здесь сделано...

10
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966
05.12.2015, 19:22  [ТС]
никаких предложений?
0
 Аватар для FireOwl
62 / 44 / 14
Регистрация: 01.07.2009
Сообщений: 145
07.12.2015, 09:36
Предлагаю переопределить JPanel, и затем в методе paintComponent(Graphics g) рисовать все что необходимо.
Пример: http://docs.oracle.com/javase/... step3.html
0
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966
07.12.2015, 16:08  [ТС]
FireOwl, ооо наконец то Спасибо за отклик.
можете подсказать как правильно представить данные чтоб потом из этих смог построит такой график, пока думаю создать матрицу в котором будут хранятся все координаты точек (но не совсем представляю... ), при этом все точки находиться по определенным формулам, которые включают в себе углы поворота и т.д.
0
 Аватар для FireOwl
62 / 44 / 14
Регистрация: 01.07.2009
Сообщений: 145
07.12.2015, 16:19
Традиционно - да, точки хранятся в массиве.
Пробегает один цикл вычислений, рассчитывает координаты всех точек на графике, и пишет в массив.
Далее вызывается метод repaint() на JPanel, чтобы отрисовать контент.
А метод paintComponent() рисует по массиву точек линии и кружки.
0
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966
07.12.2015, 16:27  [ТС]
FireOwl, думаю до рисование ещё далеко... можете прояснить какой же массив должен использовать? вроде традиционный массив m:n тут не получится или я ошибаюсь?
0
 Аватар для FireOwl
62 / 44 / 14
Регистрация: 01.07.2009
Сообщений: 145
07.12.2015, 16:41
Я не знаю какие именно графики вы будете строить, а с такими сетками как на скриншоте вообще на практике не сталкивался.
Поэтому надо поэкспериментировать.

Сами точки можно хранить в классе типа Point. Написать самому, или взять например этот: Point2d.Double.
Для линейного графика вполне подойдет обычный одномерный массив. Если есть возможность рассчитать заранее число точек на ломаной графика.
Если число точек неизвестно - возьмите ArrayList.

Сетчатый график можно скорее всего представить как двухмерный массив. Тут надо подумать уже исходя из условия задачи.
0
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966
07.12.2015, 16:46  [ТС]
FireOwl, я должен построит именно такой график, можно сказать этот график специфический т.к. касается к ж.д. транспорту тут график показывает нагрузку поезда на грунт...

З.Ы. если есть время и возможность можете проконсультировать?
0
 Аватар для FireOwl
62 / 44 / 14
Регистрация: 01.07.2009
Сообщений: 145
07.12.2015, 17:17
Сетка на рисунке имеет прямоугольные ячейки. Если мысленно "разъединить" вертикальные оси сходящиеся в точке [0, 0], то получится относительно правильная сетка с неполными рядами ("треугольной" формы).
Я бы наверное отталкивался от этого.

Двухмерные Java-массивы позволяют хранить "ступенчатые" ряды, отличающиеся длиной друг от друга.
Либо можно построить стандартный прямоугольный массив, а "недостающие" точки заполнить null.

P.S. Времени и возможности, к сожалению, только на общение в формате форума.
0
89 / 89 / 20
Регистрация: 19.02.2010
Сообщений: 966
07.12.2015, 19:01  [ТС]
FireOwl,
Цитата Сообщение от FireOwl Посмотреть сообщение
Двухмерные Java-массивы позволяют хранить "ступенчатые" ряды, отличающиеся длиной друг от друга.
можно пример в интернете не нашел или неправильно искал...
0
 Аватар для FireOwl
62 / 44 / 14
Регистрация: 01.07.2009
Сообщений: 145
07.12.2015, 23:39
Это особенность реализации многомерных массивов в Java.
http://life-prog.ru/view_zam.p... t=4&page=1

Массив в Java - это объект.
Многомерный массив - это массив массивов. И никакой механизм не принуждает программиста выравнивать элементы массива по длине.
Т.е. вложенные массивы могут быть произвольного размера.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.12.2015, 23:39
Помогаю со студенческими работами здесь

Как добавить JPanel к JFrame и рисовать на нем
ПРивет всем, я нашел в интернете кучу вариантов того как можно это сделать. Но дело в том что JFrame я создаю не в коде, а добавляя его к...

рисовать фигуры?
Нужен скрип который позволял бы рисовать прямоугольные область с возможностью перетаскивания их.

Как рисовать поверх компонент TextField JavaFX
Всем привет, не могу понят как можно рисовать поверх компонент, какой метод переопределить? Помогите с примерами пожалуйста.

Рисовать график в реальном времени
Доброго времени суток. Помогите пожалуйста вот с такой задачкой: На форме отображается некоторое число, от 0 до 120 . Необходимо на Панели...

Как в Chart-е рисовать 3D график?
сабж chart-series->addxy(4,5); для 2д а для 3д хз


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru