Russian Qt Forum
Ноябрь 23, 2024, 00:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Наиболее точное представление избыточных данных  (Прочитано 5972 раз)
once_again_abc
Гость
« : Июнь 18, 2012, 08:26 »

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

Какие есть варианты решения такой задачи? Как один из вариантов предложили брать мин/макс значения из 62-х сэмплов и рисовать по ним горизонтальную в данном пикселе.
Записан
ddrtn
Гость
« Ответ #1 : Июнь 18, 2012, 08:43 »

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

Рисовать каждую 62 точку и прикрутить зум. тогда любой участок можно "увеличить" и никакая инфа не потеряется.
То, что не влезает в пиксели и на глаз на графике оценить не получается.
Я свое не городил, пользовался Qwt

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

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Июнь 18, 2012, 08:59 »

Если речь идет о последовательных данных (т.е. каждому самплу соответствует время t) - то брать nth сампл просто плохо. нужно выбирать случайный сампл из диапазона напр 62

Edit: также часто возникает необходимость самплить адаптивно
« Последнее редактирование: Июнь 18, 2012, 09:02 от Igors » Записан
ddrtn
Гость
« Ответ #4 : Июнь 18, 2012, 09:15 »

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

Зачем. хранить весь набор. при зуме перерисовывать с i по i+n точки. уже с лучшим разрешением.
Зумить картинку действительно бесполезно.
Записан
Syveren
Гость
« Ответ #5 : Июнь 18, 2012, 09:17 »

Цитировать
Какие есть варианты решения такой задачи? Как один из вариантов предложили брать мин/макс значения из 62-х сэмплов и рисовать по ним горизонтальную в данном пикселе.
Я делал так:
n - зум-фактор
Определяем набор значений содержащих мин и макс из n точек. Далее, если минимум i точки больше максимума i+1 точки, то приравниваем минимум i точки к максимуму i+1. Аналогично,если максимум  i точки меньше минимума i+1. Это нужно, чтобы не было разрывов. Далее рисуем вертикальные линии от минимумов к максимумам.
 
Записан
once_again_abc
Гость
« Ответ #6 : Июнь 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. Это нужно, чтобы не было разрывов. Далее рисуем вертикальные линии от минимумов к максимумам.

не врубился в идею приравнивания. о каких разрывах речь и зачем еще больше влиять на данные искусственно?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #7 : Июнь 18, 2012, 09:58 »

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

выбор случайного семпла фактически == выборке nth семпла.
Совсем не равен. Выбирая N-ый сампл Вы впарываетесь в алиас. Данные - совсем не белый шум, накладывая регулярную решетку Вы увидите "совсем не то". Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума. А вот случайный выбор обмануть очень трудно.

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

пс. реализовать "хорошую" и при этом быструю случайность не очень просто...
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #9 : Июнь 18, 2012, 10:37 »

извините за, наверное, тупой вопрос, но почему "Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума."?
Напр есть "выбросы" - слишком большие и/или слишком малые значения частота которых соразмерима с шагом отображения. Работая с максимумом мы ловим эти "пики" и получаем отображение ВЧ сигнала - хотя это всего лишь наложенный шум

пс. реализовать "хорошую" и при этом быструю случайность не очень просто...
http://www.prog.org.ru/index.php?topic=21845.msg152223#msg152223
Записан
once_again_abc
Гость
« Ответ #10 : Июнь 18, 2012, 10:52 »

извините за, наверное, тупой вопрос, но почему "Манипуляции с минимумом-максимумом еще хуже, напр в случае ВЧ шума."?
Напр есть "выбросы" - слишком большие и/или слишком малые значения частота которых соразмерима с шагом отображения. Работая с максимумом мы ловим эти "пики" и получаем отображение ВЧ сигнала - хотя это всего лишь наложенный шум

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

Спасибо!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 23.