2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Сколько точек взять, чтобы построить график?
Сообщение18.11.2013, 17:17 


23/08/12
53
Привет!

Мне надо начертить график в программе.

Вопрос такой, сколько мне надо взять точек (программа берет точки, и соединяет их прямой линией последовательно), чтобы график был достаточно гладким.
Точки вычислять тяжело, поэтому нужен трейдофф между скоростью и визуальной хорошестью картинки.

Знаю, есть такие теории на счет того, сколько брать столбиков в гистограмме в зависимости от числа наблюдений, а есть ли что-то подобное для рисования графиков в зависимости от кривизны линии (известно, допустим, что это парабола), или просто есть рекомендация?
Спасибо!

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение18.11.2013, 18:03 
Заслуженный участник


27/04/09
28128
(Многие программы оставляют право выбора количества точек за пользователем. Вы пишете программу для построения или используете? (Из сообщения не ясно.))

Грубо говоря, чем сильнее отличается от нуля вторая производная функции, тем в том месте нужно было бы больше точек, чтобы отразить изменения первой. Если вторая производная известна с самого начала, можно и поизучать её, а вот если нет — с её численным нахождением выйдет похожая проблема.

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение18.11.2013, 18:19 
Заслуженный участник


07/07/09
5408
Somenoob в сообщении #790086 писал(а):
в зависимости от числа наблюдений

Видимо значения в точках экспериментальные (с шумом) , может и расположены неравномерно?

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение18.11.2013, 19:05 


23/08/12
53
Я использую программу, мне нужно в каждой точке при известном $x$ решить, допустим, оптимизационную задачу и найти $y$.

Xey, на счет шумов, у меня их нет, просто пример похожей задачи.

Значит вторая производная, ну логично, чем кривее линия, тем больше точек. Проблема в том, что мне придется численно ее считать, хотя в этом случае уж лучше сразу побольше точек взять и начертить :) Времени меньше уйдет.

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение19.11.2013, 01:31 
Аватара пользователя


21/01/09
3926
Дивногорск
Я бы задал максимальное $|y_{i+1}-y_i|$.

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение19.11.2013, 09:35 
Аватара пользователя


20/10/12
308
А вам жалко точек? Возьмите несколько тысяч. Этого точно хватит.

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение19.11.2013, 10:04 


23/08/12
53
Sphinx Pinastri в сообщении #790270 писал(а):
А вам жалко точек? Возьмите несколько тысяч. Этого точно хватит.

Жалко времени, так как тысячу точек долго получать.

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение19.11.2013, 13:42 
Аватара пользователя


31/10/08
1244
Если это парабола, то 16 точек хватит. Но у вас же видимо график сложный. А так обычно число точек должно равняться число точек на мониторе к примеру 1280.
(*)Но если хотите гладкую, то разбиваете отрезок по полам, а половины еще пополам до тех пор пока средняя точка не будет отклоняться прямой на 0.5(лучше 1/8) пикселя выводимого на устройство вывода.
Прямая строиться по тем точкам которые разбиваем пополам.
В видео-картах к примеру разбиение идет через примерно 16 точек. Т.е 1280/16=80 точек. Это видимо больше аппаратная особенность.

По поводу гладкости, если график гладкий, то большие расчёты можно заменить сплайном третий степени. Будет считаться моментально. Да и вывод сплайнов функция стандартная, один из алгоритмов (*).

 Профиль  
                  
 
 Re: Сколько точек взять, чтобы построить график?
Сообщение08.01.2014, 14:02 
Аватара пользователя


26/05/12
1700
приходит весна?
А можно посмотреть уравнение из которого считается функция, график которой необходимо построить? Возможно, именно график можно будет построить гораздо быстрее, чем решать вашу задачу численно.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group