Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 24.02.2016
Сообщений: 1
1

Qt и компонент qcustomplot

24.02.2016, 11:01. Показов 500. Ответов 0
Метки c++, qt (Все метки)

Author24 — интернет-сервис помощи студентам
Люди помогите пожалуйста с компонентом qcustomplot.
Есть вот такой код 2х кнопок:
Кликните здесь для просмотра всего текста
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
void MainWindow::on_pushButton_23_clicked()//Кнопка для прорисовки основной функции введенной пльзователем
{
    char* p = new char(ui->lineEdit->text().length() + 1);
    strcpy(p, ui->lineEdit->text().toLatin1().constData());
    functparcer funct = functparcer(p);
    double dlina = ui->lineEdit_2->text().toDouble();
    double a = -dlina; //Начало интервала, где рисуем график по оси Ox
    double b = dlina+1; //Конец интервала, где рисуем график по оси Ox
    double h = 0.001; //Шаг, с которым будем пробегать по оси Ox
    int n=10*((b-a)/h + 1); //Вычисляем количество точек, которые будем отрисовывать
    QVector<double> x(n), y(n); //Массивы координат точек
    //Вычисляем наши данные
    int i=0;
    for (double X=a; X<=b; X+=h)//Пробегаем по всем точкам
    {
        x[i] = X;
        y[i] = funct.getY(X);//Формула нашей функции
        i++;
    }
    ui->widget->addGraph();
    //Говорим, что отрисовать нужно график по нашим двум массивам x и y
    ui->widget->graph(0)->setData(x, y);
    ui->widget->graph(0)->setPen(QColor(50, 50, 50, 255));
    //Подписываем оси Ox и Oy
    ui->widget->xAxis->setLabel("x");
    ui->widget->yAxis->setLabel("y");
    ui->widget->xAxis->setRange(-dlina, dlina);//Для оси Ox
    ui->widget->yAxis->setRange(-dlina, dlina);//Для оси Oy
    //Установим область, которая будет показываться на графике
    ui->widget->replot();//И перерисуем график на нашем widget
}

Кликните здесь для просмотра всего текста
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
void MainWindow::on_pushButton_30_clicked()//кнпока для построения второй производной
{
    char* p = new char(ui->lineEdit->text().length() + 1);
    strcpy(p, ui->lineEdit->text().toUtf8().constData());
    functparcer funct1 = functparcer(p);
    double dlina = ui->lineEdit_2->text().toDouble();
    double a = -dlina; //Начало интервала, где рисуем график по оси Ox
    double b = dlina+1; //Конец интервала, где рисуем график по оси Ox
    double h = 0.001; //Шаг, с которым будем пробегать по оси Ox
    int n=10*((b-a)/h + 1); //Вычисляем количество точек, которые будем отрисовывать
    QVector<double> x(n), y(n); //Массивы координат точек
    //Вычисляем наши данные
    int i=0;
    for (double X=a; X<=b; X+=h)
    {
        x[i]=X;
        y[i]=((-((funct1.getY(X+MAL)-funct1.getY(X))/MAL)+((funct1.getY(X+MAL+MAL)-funct1.getY(X+MAL))/MAL))/MAL);
        i++;
    }
    ui->widget->addGraph();
    ui->widget->graph(0)->setData(x, y);
    ui->widget->graph(0)->setPen(QColor(0, 0, 250, 255));
    ui->widget->xAxis->setLabel("x");
    ui->widget->yAxis->setLabel("y");
    ui->widget->xAxis->setRange(-dlina, dlina);//Для оси Ox
    ui->widget->yAxis->setRange(-dlina, dlina);//Для оси Oy
    ui->widget->replot();//И перерисуем график на нашем widget
}

Нужно что бы на нем при нажатии кнопок на поле customplot отображались сразу несколько графиков функции, но в данный момент график просто перерисовывается и заново при нажатии на кнопку.
Может кто нибудь подскажет как сделать так что бы 2 графика одновременно прорисовывались.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2016, 11:01
Ответы с готовыми решениями:

Qt и QCustomplot
Создаю графики в qt но появляется не понятная ошибка вот .h файл #ifndef VIEW_H #define...

QCustomPlot и QVector
Рисую график в реальном времени. И рисуется он медленно. Пытался это делать по двум... путям. ...

График QCustomPlot
Здравствуйте! Столкнулась с такой проблемой: Строю график sinx+cosx и в точке (0,0) график...

Интерфейс на Qt и с QCustomPlot!
Всем привет, очень нужна помощь. Пишу интерфейс на Qt для отображения результатов. Мне нужно...

0
24.02.2016, 11:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2016, 11:01
Помогаю со студенческими работами здесь

QCustomPlot QCPBars
Здравствуйте, в общем я отобразил гистограмму через qcustomplot и также отобразил график. Может...

Qcustomplot savepng
Ui-&gt;Graph2-&gt;savePng(name+&quot;.png&quot;); сохраняет то что вырисовывается в graph2 , в папку дебаг, можно...

Работа с qcustomplot
Здравствуйте, заинтересовала библиотека qcustomplot, хотел на ней, сделать диаграмму в виде...

QCustomPlot promoto to
Задача нарисовать много графиков в программе, для этого их нужно будет создавать несколько в разных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru