Тёмный

Как сделать график в Qt Creator 

Программный Кот
Подписаться 7 тыс.
Просмотров 32 тыс.
50% 1

Привет!
В этом выпуске создаем графики в Qt. В первой части видео мы подключим библиотеку QCustomPlot к проекту и нарисуем параболу, во второй части добавим анимацию, а в конце выпуска нарисуем график функции бэтмена!
Библиотеку можно скачать здесь: www.qcustomplot.com/index.php...
Формулы для графика бэтмена
1) 2*sqrt(-abs(abs(X)-1)*abs(3-abs(X))/((abs(X)-1)*(3-abs(X))))*(1+abs(abs(X)-3)/(abs(X)-3))*sqrt(1-(X/7)*(X/7))+(5+0.97*(abs(X-.5)+abs(X+.5))-3*(abs(X-.75)+abs(X+.75)))*(1+abs(1-abs(X))/(1-abs(X)))
2) -3*sqrt(1-(X/7)*(X/7))*sqrt(abs(abs(X)-4)/(abs(X)-4))
3) abs(X/2)-0.0913722*(X*X)-3+sqrt(1-(abs(abs(X)-2)-1)*(abs(abs(X)-2)-1))
4) (2.71052+(1.5-.5*abs(X))-1.35526*sqrt(4-(abs(X)-1)*(abs(X)-1)))*sqrt(abs(abs(X)-1)/(abs(X)-1))+0.9

Опубликовано:

 

6 мар 2021

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 59   
@lmx2315
@lmx2315 25 дней назад
Спасибо за ролик, интересно смотреть.
@-USER_NAME
@-USER_NAME 2 года назад
Наконец то нормальные курсы по Qt. Лайк подписка естестн 👍
@glebkublahanov
@glebkublahanov Год назад
Полезное видео, благодарю. Отдельный респект за хорошую музыку!
@sergst8263
@sergst8263 Год назад
Очень благодарю! Искал материал по Qt, нашёл около десятка курсов, но эти ролики мне кажется лучше всех)) изложение и качество материала - просто огонь )) лайк и подписка ))
@desu-un4hw
@desu-un4hw 3 года назад
Спасибо тебе огромное, благодаря твоему видосу я смог решить одну из нужных мне задач и получить автомат по языкам программирования в ВУЗе. Желаю твоему каналу дальнейшего развития и успехов в будущем!
@user-qq4zm1so1c
@user-qq4zm1so1c 3 года назад
Ты лучший. Всё чётко и понятно. Продолжай в том же духе
@programmcat
@programmcat 3 года назад
спасибо! ))
@rristee
@rristee 2 года назад
Крутое видео! Продолжай в том же духе! Прям ответы на кучу вопросов просто и доступно! Супер!
@cppprograms5868
@cppprograms5868 2 года назад
Сразу лайк!!! Классные видосы💪💪
@programmcat
@programmcat 2 года назад
рад, что понравилось
@victoria_l17
@victoria_l17 2 года назад
Спасибо, вы мне очень помогли💙 Странно, что на таком полезном канале мало подписчиков, желаю вам набрать миллионную аудиторию)
@programmcat
@programmcat 2 года назад
Спасибо
@winstonsmith1984_
@winstonsmith1984_ 3 года назад
С таким кодом тоже хороший график получается ;) Нужно добавить кнопку radioButton_4 В void MainWindow::TimerSlot() добавить: else if (ui->radioButton_4->isChecked()) { double a = -3*X*log(X) + (exp(-(36*X-12)*(36*X-12)*(36*X-12)*(36*X-12)))/36; y.push_back(a); } И обработка нажатия кнопки: void MainWindow::on_radioButton_4_clicked() { h = 0.01; ui->widget->xAxis->setRange(0,2); ui->widget->yAxis->setRange(0,2); xBegin = 0-h; xEnd = 1 + h; N = (xEnd - xBegin)/h + 2; ChangeFunc(); }
@SofaSofa-fw2bz
@SofaSofa-fw2bz Год назад
лучший лучший лучший А можно такой же видос по QTcharts??
@RODIK_official
@RODIK_official 3 года назад
Спасибо деду за победу
@alexgifworld981
@alexgifworld981 2 года назад
Здравствуйте, можно ли в setData передавать обычные массивы, под которые мы выделяли память с помощью malloc
@vovan4ikgaming
@vovan4ikgaming 2 года назад
если у вас будет проблема с 'byte': ambiguous symbol, то это фикситься если забрать лишние using namespace std и пользоваться std:: где будут ошибки
@artemmmm
@artemmmm Год назад
А можно у осей координат значения убрать? Или это в библиотеке что-то делать нужно?
@iiimahbl_3a_40_rpubeh3
@iiimahbl_3a_40_rpubeh3 3 года назад
Можешь могешь Ну это риал топ топовый
@den_wd2910
@den_wd2910 Год назад
Может кто подсказать, почему не собирается проект после добавления файлов qcustomplot?
@user-jm3dk2zq1e
@user-jm3dk2zq1e 3 года назад
Привет, хорошее видео! А как сделать так, чтобы пользователь выбирал значения из QComboBox и по нажатию на кнопку строился график? Просто когда вставляешь путь значения в y.push_back(ui->selection->currentText()), то компилятор ругается на несовместимость QString (то что я хочу вставить) и double(что предлагает компилятор). Знаешь как это сделать? Буду очень благодарен за ответ
@programmcat
@programmcat 3 года назад
Нужно добавить в код условие. Если выбран такой-то пункт в выпадающем списке - считать Y по такой-то формуле. Просто так брать значение из comboBox не нужно (конечно если ты не строишь прямую, у которой Y параллельный оси Х)
@user-jm3dk2zq1e
@user-jm3dk2zq1e 3 года назад
@@programmcat Ты имеешь ввиду сделать проверку из comboBox условными операторами? У меня в задании просто нужно задать коэффициенты перед функцией или в самом аргументе (к примеру у = а*х2 + b*х + с, у = a*sin(x)) и после нажатия кнопки построить график, я не совсем уверен, что можно будет сравнивать заданное значение и то, которое получено из comboBox с коэффициентами
@programmcat
@programmcat 3 года назад
@@user-jm3dk2zq1e в таком случае тебе нужно просто из строки сделать число, используй toDouble сразу после currentText()
@user-jm3dk2zq1e
@user-jm3dk2zq1e 3 года назад
@@programmcat У меня получилось. Спасибо)
@user-mm5ln4qh5q
@user-mm5ln4qh5q Год назад
Ты глупый
@sayxzero
@sayxzero Год назад
Маленькая поправка. Вместо addData() желательно использовать setData(), так как в первом случае при повторном задании значений на графике сохранятся старые.
@losthalo428
@losthalo428 Год назад
у меня с setData тоже сохраняются старые значения
@sayxzero
@sayxzero Год назад
@@losthalo428 Нашли решение?
@losthalo428
@losthalo428 Год назад
@@sayxzero да, надо было делать x.clear(), y.clear() в начале функции
@user-sy9fc6wd5h
@user-sy9fc6wd5h 2 года назад
Как сделать разрыв в функции ? напрмер tan(x)
@user-mm5ln4qh5q
@user-mm5ln4qh5q Год назад
Подумай
@user-ix9fh6qi8n
@user-ix9fh6qi8n Год назад
а что делать если вместо pro файла cmake?
@user-mm5ln4qh5q
@user-mm5ln4qh5q Год назад
Ты глупый! При создании проекта вместо CMake выбери QMake.
@nakamasama
@nakamasama 2 года назад
А у меня программа каждый раз компиллируется по пол-минуты. Есть ли другие нормальные адекватные библиотеки, которые являются динамическими, что бы не нужно было каждый раз ждать компиляцию библиотеки?
@programmcat
@programmcat 2 года назад
Наверное компьютер морально устарел
@nakamasama
@nakamasama 2 года назад
@@programmcat , у меня? AMD Ryzen 5 3400G, два с половиной года назад это был наилучший процессор с интегрированной графикой. Я все эти два года компиллирую программы не больше 1-2 секунд в Qt, а если в консоли вводить команды, то вообще моментально. Моя библиотека на 5000 строчек кода, которая постоянно увеличивается, компилируется не больше 1 секунды в Qt. А исходник этой библиотеки весит больше 3МБ и компилируется пол минуты. Так что проблемма не в процессоре, а в самой библиотеке. Там нет разделения на объявление классов и их определение. Там всё делается в одном .h файле, поэтому оно компилируется вместе с самой программой и каждый раз занимает время. Если бы объявления были написаны в .h файле, а определения в .cpp файле, то можно было бы один раз скомпилировать за пол-минуты библиотеку и потом каждый раз компилировать програму за секунду и просто подкладывать ей .dll файл. Это быстрее и удобнее. Поэтому я и спросил, не знаете ли Вы ещё каких-то библиотек, но которые не статические, а динамические. Если нет, то я попробую решить свою задачу на питоне. О, у меня крутая идея!!! Предлагаю Вам снять ролик, как писать программы на Питоне в Qt. Я знаю, что в Qt Creator можно дать Питоновский интерпретатор, но как писать программы на Питоне так и не разобрался.
@user-mz2bt5oc1b
@user-mz2bt5oc1b 3 года назад
как сделать динамический график, где будет отображаться int и время?
@programmcat
@programmcat 3 года назад
не понял вопрос, какой int?
@user-mm5ln4qh5q
@user-mm5ln4qh5q Год назад
Ты глупый
@somacrafet3553
@somacrafet3553 Год назад
hhhhhhhhhhhhhh 8:00 Ops!
@tmhcp1
@tmhcp1 Год назад
" moc_qcustomplot.cpp:249:35: Unexpected namespace name 'QCP': expected expression " что делать при это ошибке пишу на маке?
@programmcat
@programmcat Год назад
гуглить
@tmhcp1
@tmhcp1 Год назад
@@programmcat я это сделал первым делом, ни одного совета который мне помог я не нашел
@programmcat
@programmcat Год назад
У тебя библиотека не подключена
@tmhcp1
@tmhcp1 Год назад
@@programmcat а как ее подключить? я наверное совсем валенок
@sv9130
@sv9130 3 года назад
блин, какое же это все таки страшное убожество по сравнению с графиками матлаба
@programmcat
@programmcat 2 года назад
не очень удобно конечно, но у qt в целом функционал в разы шире чем у матлаба
@sv9130
@sv9130 2 года назад
@@programmcat да, но почему то не удается найти библиотеки где бы с помощью этого функционала было реализованно хоть что то похожее на figure, axes и plot объекты в матлабе.
@kvoistinov
@kvoistinov 2 года назад
@@sv9130 потому что QCustomPlot open source free библиотека, а за тот же матлаб как и расширенный функционал Qt надо платить! Так что довольствуйтесь тем, что есть на бесплатной основе.
@user-zf2ih8qj6b
@user-zf2ih8qj6b 2 года назад
Музыкальный кот - пиляттттттттттттттттттттттттттттттттттттттт! ДИЗ!
@uzbekistan_abror5508
@uzbekistan_abror5508 9 месяцев назад
:-1: ошибка: [Makefile.Debug:1821: debug/qcustomplot.o] Error 1 Что надо сделать плиз помогите
@persik1455
@persik1455 8 месяцев назад
в файл .pro добавь QMAKE_CXXFLAGS += -Wa,-mbig-obj
@luxury3680
@luxury3680 7 месяцев назад
Ты решил эту проблему?
@donsilvio858
@donsilvio858 5 месяцев назад
@@luxury3680 я решил, используя компилятор MSVC2019 64bit по умолчанию
Далее
Просто о таймерах в Qt Creator
8:37
LISA - ROCKSTAR (MV Teaser)
00:10
Просмотров 4,2 млн
Thank you 3M❤️
00:14
Просмотров 678 тыс.
ААААА СПАСИТЕ😲😲😲
00:17
Просмотров 1,6 млн
Писать UI для Android на QT
1:43:29
Просмотров 17 тыс.
Рисование в Qt Creator за 6 минут
6:45
ты C++ РАЗРАБОТЧИК?) ага
12:04
Просмотров 227 тыс.
How to use Qt Layouts
19:18
Просмотров 89 тыс.
Plotting in Qt using QCustomPlot
9:15
Просмотров 92 тыс.
LISA - ROCKSTAR (MV Teaser)
00:10
Просмотров 4,2 млн