Russian Qt Forum

Программирование => Алгоритмы => Тема начата: once_again_abc от Июнь 18, 2012, 08:26



Название: Наиболее точное представление избыточных данных
Отправлено: once_again_abc от Июнь 18, 2012, 08:26
Опять 25 как говорится. Проблема такая - получаю, скажем, 50000 неких значений; все это добро надо отобразить на, к примеру, 800 пикселях. Если брать просто каждый 62-й сэмпл, то теряется информация и не ясно какой именно брать для отображения, если же вычислять среднее по 62 занчениям и рисовать усреденное, то теряется информация о шуме.

Какие есть варианты решения такой задачи? Как один из вариантов предложили брать мин/макс значения из 62-х сэмплов и рисовать по ним горизонтальную в данном пикселе.


Название: Re: Наиболее точное представление избыточных данных
Отправлено: ddrtn от Июнь 18, 2012, 08:43
Рисовать каждую 62 точку и прикрутить зум. тогда любой участок можно "увеличить" и никакая инфа не потеряется.
То, что не влезает в пиксели и на глаз на графике оценить не получается.
Я свое не городил, пользовался Qwt


Название: Re: Наиболее точное представление избыточных данных
Отправлено: once_again_abc от Июнь 18, 2012, 08:57
Рисовать каждую 62 точку и прикрутить зум. тогда любой участок можно "увеличить" и никакая инфа не потеряется.
То, что не влезает в пиксели и на глаз на графике оценить не получается.
Я свое не городил, пользовался Qwt

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


Название: Re: Наиболее точное представление избыточных данных
Отправлено: Igors от Июнь 18, 2012, 08:59
Если речь идет о последовательных данных (т.е. каждому самплу соответствует время t) - то брать nth сампл просто плохо. нужно выбирать случайный сампл из диапазона напр 62

Edit: также часто возникает необходимость самплить адаптивно


Название: Re: Наиболее точное представление избыточных данных
Отправлено: ddrtn от Июнь 18, 2012, 09:15
Цитировать
не пойдет, чтобы делать зум, надо сперва знать на каком участке его делать, а рисуя только каждую избранную точку, возможно оставляешь за кадром важную информацию. т.е. скажем так - можно получить гладкую линию и не увидеть пик, т.к. он был на 47-й точке, а нарисована была 62-ая.

Зачем. хранить весь набор. при зуме перерисовывать с i по i+n точки. уже с лучшим разрешением.
Зумить картинку действительно бесполезно.


Название: Re: Наиболее точное представление избыточных данных
Отправлено: Syveren от Июнь 18, 2012, 09:17
Цитировать
Какие есть варианты решения такой задачи? Как один из вариантов предложили брать мин/макс значения из 62-х сэмплов и рисовать по ним горизонтальную в данном пикселе.
Я делал так:
n - зум-фактор
Определяем набор значений содержащих мин и макс из n точек. Далее, если минимум i точки больше максимума i+1 точки, то приравниваем минимум i точки к максимуму i+1. Аналогично,если максимум  i точки меньше минимума i+1. Это нужно, чтобы не было разрывов. Далее рисуем вертикальные линии от минимумов к максимумам.
 


Название: Re: Наиболее точное представление избыточных данных
Отправлено: once_again_abc от Июнь 18, 2012, 09:46
Цитировать
Igors
Если речь идет о последовательных данных (т.е. каждому самплу соответствует время t) - то брать nth сампл просто плохо. нужно выбирать случайный сампл из диапазона напр 62

выбор случайного семпла фактически == выборке nth семпла.

Цитировать
ddrtn
Зачем. хранить весь набор. при зуме перерисовывать с i по i+n точки. уже с лучшим разрешением.
Зумить картинку действительно бесполезно.

мне кажется мы не поняли друг друга. сперва надо что-то нарисовать. а что бы что-то нарисовать, надо знать ЧТО рисовать так, чтобы не потерять/не исказить данные. т.е. речь не идет сейчас о зуме, с ним как раз все в порядке - тут проблема узнать какой участок зумить =)

Цитировать
Syveren
Я делал так:
n - зум-фактор
Определяем набор значений содержащих мин и макс из n точек. Далее, если минимум i точки больше максимума i+1 точки, то приравниваем минимум i точки к максимуму i+1. Аналогично,если максимум  i точки меньше минимума i+1. Это нужно, чтобы не было разрывов. Далее рисуем вертикальные линии от минимумов к максимумам.

не врубился в идею приравнивания. о каких разрывах речь и зачем еще больше влиять на данные искусственно?


Название: Re: Наиболее точное представление избыточных данных
Отправлено: Igors от Июнь 18, 2012, 09:58
выбор случайного семпла фактически == выборке nth семпла.
Совсем не равен. Выбирая N-ый сампл Вы впарываетесь в алиас. Данные - совсем не белый шум, накладывая регулярную решетку Вы увидите "совсем не то". Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума. А вот случайный выбор обмануть очень трудно.


Название: Re: Наиболее точное представление избыточных данных
Отправлено: once_again_abc от Июнь 18, 2012, 10:20
выбор случайного семпла фактически == выборке nth семпла.
Совсем не равен. Выбирая N-ый сампл Вы впарываетесь в алиас. Данные - совсем не белый шум, накладывая регулярную решетку Вы увидите "совсем не то". Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума. А вот случайный выбор обмануть очень трудно.

извините за, наверное, тупой вопрос, но почему "Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума."?

пс. реализовать "хорошую" и при этом быструю случайность не очень просто...


Название: Re: Наиболее точное представление избыточных данных
Отправлено: Igors от Июнь 18, 2012, 10:37
извините за, наверное, тупой вопрос, но почему "Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума."?
Напр есть "выбросы" - слишком большие и/или слишком малые значения частота которых соразмерима с шагом отображения. Работая с максимумом мы ловим эти "пики" и получаем отображение ВЧ сигнала - хотя это всего лишь наложенный шум

пс. реализовать "хорошую" и при этом быструю случайность не очень просто...
http://www.prog.org.ru/index.php?topic=21845.msg152223#msg152223 (http://www.prog.org.ru/index.php?topic=21845.msg152223#msg152223)


Название: Re: Наиболее точное представление избыточных данных
Отправлено: once_again_abc от Июнь 18, 2012, 10:52
извините за, наверное, тупой вопрос, но почему "Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума."?
Напр есть "выбросы" - слишком большие и/или слишком малые значения частота которых соразмерима с шагом отображения. Работая с максимумом мы ловим эти "пики" и получаем отображение ВЧ сигнала - хотя это всего лишь наложенный шум

пс. реализовать "хорошую" и при этом быструю случайность не очень просто...
http://www.prog.org.ru/index.php?topic=21845.msg152223#msg152223 (http://www.prog.org.ru/index.php?topic=21845.msg152223#msg152223)

Спасибо!