Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Igors от Март 03, 2018, 06:14



Название: Масштаб графиков
Отправлено: Igors от Март 03, 2018, 06:14
Добрый день

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

Проблема: а что показывать в шкале значений если один или более графиков имеют масштаб != 1 ? Вот был бы 1 график - проблемы нет, показывать "истинные" значения, и все дела. А так что? Ну или как-то намекнуть, что, мол, значения масштабленные. Не уверен что здесь вообще есть решения.

Спасибо


Название: Re: Масштаб графиков
Отправлено: ssoft от Март 05, 2018, 08:29
Обычно отображают условные единицы, а в легенде указывают масштабный коэффициент и единицы измерения.
Если планируется использовать разные шкалы, например, обычную и логарифмическую, то ось y располагают с двух сторон.


Название: Re: Масштаб графиков
Отправлено: Igors от Март 06, 2018, 11:45
Обычно отображают условные единицы, а в легенде указывают масштабный коэффициент и единицы измерения.
Если планируется использовать разные шкалы, например, обычную и логарифмическую, то ось y располагают с двух сторон.
Разумно, но не вижу как применить к моему случаю. Какие графики показывать - целиком дело юзера. Досадно что в большинстве случаев активен 1 график, остальные "в фоне" или вообще не рисуются. Если активный имеет масштаб != 1 то шкала "не соответствует"

Ну наверное "ларчик просто "не открывался"  :), т.е. объективно нет решения


Название: Re: Масштаб графиков
Отправлено: Racheengel от Март 06, 2018, 13:05
ну а почему бы не показывать только шкалу того графика, который "активен"?


Название: Re: Масштаб графиков
Отправлено: Igors от Март 07, 2018, 08:19
ну а почему бы не показывать только шкалу того графика, который "активен"?
Тогда что делать если активируется еще один? Менять шкалу - под какой? А если оставить для первого - то при активации в обратном порядке несоответствие


Название: Re: Масштаб графиков
Отправлено: ssoft от Март 07, 2018, 09:57
Разумно, но не вижу как применить к моему случаю. Какие графики показывать - целиком дело юзера. Досадно что в большинстве случаев активен 1 график, остальные "в фоне" или вообще не рисуются. Если активный имеет масштаб != 1 то шкала "не соответствует"
Ну наверное "ларчик просто "не открывался"  :), т.е. объективно нет решения

А я не вижу как не применить))). ;D Либо способ применения не весь описан (для чего пользователю эти графики - информативные, средства управления и т.п.; какую задачу для пользователя решают и т.д.).

Пусть есть условная шкала от -10 до 10, диапазон можно выбрать любой.
Графики автоматически масштабируем по принципу ... x1/10, x1/5, x1/2, x1, x2, x5, x10, x20, x50 ..., чтобы в отображаемый диапазон влезли.
Пользователь может флажки видимости выставлять, менять цвета, типы линий и т.п.

Потом для красоты можно еще и вписать в границы. То есть если мы выбрали условный диапазон -10, 10, а все графики получились, например, в диапазоне -0.93 до 6.59, то можно отобразить только значимую область от -1 до 7.


Название: Re: Масштаб графиков
Отправлено: Racheengel от Март 07, 2018, 11:57
ну а почему бы не показывать только шкалу того графика, который "активен"?
Тогда что делать если активируется еще один? Менять шкалу - под какой? А если оставить для первого - то при активации в обратном порядке несоответствие

Вторую шкалу дорисовать, другим цветом. Обычная практика вроде бы :)


Название: Re: Масштаб графиков
Отправлено: Igors от Март 08, 2018, 08:54
А я не вижу как не применить))). ;D Либо способ применения не весь описан (для чего пользователю эти графики - информативные, средства управления и т.п.; какую задачу для пользователя решают и т.д.).
Все очень банально. Ось X - всегда время, ось Y - значение. Напр движение объекта в пр-ве может быть представлено 3 графиками  x, y, z. Их соразмеримость обычно важна, вписывать каждый не годится. Теперь напр юзер добавил еще и график вращения (в градусах), и очень может быть что он показывается практически горизонтальной линией, если его диапазон значений намного меньше. Остается дать юзеру возможность самому задать масштаб для каждого.

Вторую шкалу дорисовать, другим цветом. Обычная практика вроде бы :)
И для третьего графика... :)


Название: Re: Масштаб графиков
Отправлено: Racheengel от Март 08, 2018, 10:17
Для третьего - еще одну шкалу)

Альтернатива: как только больше 2 графиков, спрятать все шкалы и показывать только ту, по чьей легенде кликнул юзер.