Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Qt+Qwt] Даты по оси x QwtPlot 
V
    Опции темы
panukov
Дата 13.1.2010, 07:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 8.4.2009
Где: Омск

Репутация: нет
Всего: нет



Задача - построить график, где по оси x (абсцисс) отмечены даты в формате "dd-mm hh:mm".
QwtPlot рисует, как я понял, график double от double.
Каким образом можно заменить подписи по оси? Или есть возможность построить такой график сразу?
PM MAIL   Вверх
W4FhLF
Дата 13.1.2010, 07:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 4
Всего: 121



Тебе надо унаследовать класс QwtScaleDraw и переопределить метод:

Код

virtual QwtText label (double) const


В нём ты можешь представить переданное значение как твоей душе угодно. 

И установить его для QwtPlot:

Код

setAxisScaleDraw(QwtPlot::xBottom, new MyScaleDraw());


И посмотри пример cpuplot, там на x рисуется время.

Добавлено через 3 минуты и 38 секунд
Код

class TimeScaleDraw: public QwtScaleDraw
{
public:
    TimeScaleDraw(const QTime &base):
        baseTime(base)
    {
    }
    virtual QwtText label(double v) const
    {
        QTime upTime = baseTime.addSecs((int)v);
        return upTime.toString();
    }
private:
    QTime baseTime;
};



--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
panukov
Дата 13.1.2010, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 8.4.2009
Где: Омск

Репутация: нет
Всего: нет



W4FhLF, спасибо, разобрался.  smile 
PM MAIL   Вверх
panukov
  Дата 13.1.2010, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 8.4.2009
Где: Омск

Репутация: нет
Всего: нет



Теперь такой вопрос:
необходимо при двойном щелчке по кривой сгенерить сигнал с параметрами - координатами точки, где был щелчок.
Каким образом я могу это реализовать?
PM MAIL   Вверх
W4FhLF
Дата 13.1.2010, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 4
Всего: 121



Цитата(panukov @  13.1.2010,  11:30 Найти цитируемый пост)
Теперь такой вопрос:


Одна тема -- один вопрос. Создай ещё одну тему, а эту пометь решённой. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Bkmz92
Дата 26.11.2010, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 12.7.2010

Репутация: нет
Всего: нет



ДУмаю смысл тотже, у меня все так как вы сказали сделано. Но вот не задача, как мне сделать так чтобы по краям полотная на подписях были время+дата, чтобы иметь предстявление в каком времени я нахожусь. Есть идеи? 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0443 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.