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

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

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Масштабирование и прокрутка графиков по отдельности  (Прочитано 11970 раз)
Bolonat
Чайник
*
Offline Offline

Сообщений: 56


Qt Creator 4.5.0 на Qt 5.10.0 (W10 x64) MinGW 5.3.


Просмотр профиля
« Ответ #15 : Август 24, 2017, 13:11 »


Цитировать
LOOOL!  Смеющийся
Ну, например



Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #16 : Август 24, 2017, 14:20 »

То есть, считаете, перерисовать 30 графиков с 200 тыс точек в каждом при изменении одного, это нормально?
200'000 точек в графике, но ведь они на мониторе тупо не поместятся.

Есть Qt Charts там лицензия конечно не айс, но вроде тяжелые графики тянул.
Записан
Bolonat
Чайник
*
Offline Offline

Сообщений: 56


Qt Creator 4.5.0 на Qt 5.10.0 (W10 x64) MinGW 5.3.


Просмотр профиля
« Ответ #17 : Август 24, 2017, 15:44 »

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

Цитировать
Есть Qt Charts там лицензия конечно не айс, но вроде тяжелые графики тянул.
Лицензия на Qt Charts не подходит. Единственная библиотека, лицензия которой могла бы подойти это mathGL( да и то там есть ограничения) и производительность у нее хорошая. Но очень мало  материалов по ней в сети, а если задаешь вопросы в группе (в google+ по ней есть группа), то во-первых надо на английском, во-вторых очень медленный отклик. Русскоязычных форумов нет.
« Последнее редактирование: Август 24, 2017, 18:46 от Bolonat » Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #18 : Август 25, 2017, 08:08 »

В настоящее время я никак не интерполирую значения. Тупо делю ширину на количество точек, получаю шаг (очень маленький), прибавляю его к текущему значению х  и отображаю. 
Соглашусь, что на одном пикселе может отобразиться тысяча значений, но зато я точно не потеряю данные.  То есть не будет искажений, который неизбежно появятся, если я буду отображать одну точку из ста (процеживание) или брать среднее из сотни точек или еще что-то.
Ну вообще то вы находите для каждого экранного X координаты Y_MIN, Y_MAX, Y_IN, Y_OUT и не надо экран долбать постоянно
Записан
Bolonat
Чайник
*
Offline Offline

Сообщений: 56


Qt Creator 4.5.0 на Qt 5.10.0 (W10 x64) MinGW 5.3.


Просмотр профиля
« Ответ #19 : Август 25, 2017, 09:07 »

Ну вообще то вы находите для каждого экранного X координаты Y_MIN, Y_MAX, Y_IN, Y_OUT и не надо экран долбать постоянно
Спасибо. А что такое  Y_IN, Y_OUT?
Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #20 : Август 25, 2017, 10:24 »

Спасибо. А что такое  Y_IN, Y_OUT?
я ошибся, думал как входная и выходная точка, вы соединяете следующий Y_IN c предыдущим Y_OUT, и рисуете 2 линии (Y_IN(x+1) - Y_OUT(x) и Y_MIN - Y_MAX). Но это только шум даст и неверные данные(если Y_OUT почти вверху и Y_IN почти вверху он нарисует линию выше Y_MAX).
поэтому смотрите если у вас в dx (1 пиксель) влезает больше 1-1,5-2-3 точек, рисуете линии Y_MIN Y_MAX иначе обычный график.
Записан
Bolonat
Чайник
*
Offline Offline

Сообщений: 56


Qt Creator 4.5.0 на Qt 5.10.0 (W10 x64) MinGW 5.3.


Просмотр профиля
« Ответ #21 : Август 25, 2017, 11:19 »

поэтому смотрите если у вас в dx (1 пиксель) влезает больше 1-1,5-2-3 точек, рисуете линии Y_MIN Y_MAX иначе обычный график.
Ок.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


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