Тёмный

#12. Как строить трехмерные графики | Matplotlib уроки 

selfedu
Подписаться 159 тыс.
Просмотров 16 тыс.
50% 1

Строим трехмерные графики функциями plot_wireframe() и plot_surface(), а также с помощью plot() и scatter(). Создание трехмерной системы координат с помощью класса Axes3D и через параметр projection функции add_subplot(). Формирование двумерной сетки функцией meshgrid() пакета numpy.
Инфо-сайт: proproprogs.ru...
Axes3D: matplotlib.org...
Matplotlib: matplotlib.org...

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

 

30 сен 2024

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 38   
@mynameiszabil.3157
@mynameiszabil.3157 3 года назад
какое же классный канал, на этом канале я много чего узнал нового! продолжайте в том же духе! Жаль, что ваш труд никто не замечает.. А ваш сайт просто прекрасный! все так понятно написано, не знаю чтобы делал без вас, не забрасывайте!
@ГеннадийА-и9ж
@ГеннадийА-и9ж 3 года назад
Заметят 100 % Материал очень качественный!!!
@user-px9rd6oy8i
@user-px9rd6oy8i 2 года назад
Чтобы двигать 3Д сцену в Jupyter Notebook используйте функцию %matplotlib notebook
@Cumslayer
@Cumslayer Год назад
а не знаешь часом как это сделать для spyder?
@mormonteg4073
@mormonteg4073 Год назад
И для google collab ))
@ozaaraa
@ozaaraa 8 месяцев назад
​@@Cumslayerдля spyder: инструменты --> параметры --> консоль iPython --> графика --> бэкенд --> автоматически.
@Dmitrii-Zhinzhilov
@Dmitrii-Zhinzhilov Год назад
Сергей, благодарю! Качественный урок 👍🔥💯
@shncl
@shncl Год назад
омагад, опять вы, вы что сталкер?
@waydao4958
@waydao4958 3 года назад
Шапочка получилась))
@friend1cat
@friend1cat 3 года назад
Спасибо, Сергей!
@СарматПересветов
@СарматПересветов 10 месяцев назад
Огромное спасибо!
@serg888fert4
@serg888fert4 2 года назад
здравствуйте. Как сделать, чтобы график выводился в отдельном окне и его можно было мышкой вращать, как в видео?
@ИлларионИванов-л1е
Автор работает по - моему в PyCharm (среда разработки), наверное там можно вращать при запуске программ. Я например в GoogleColab программирую (онлайн), там нет возможности вращать. От среды разработки думаю зависит.
@serg888fert4
@serg888fert4 Год назад
@@ИлларионИванов-л1е нет. Его можно вращать везде. Там задаётся опция. И появляется эта возможность. Но я уже забыл.
@ИлларионИванов-л1е
@@serg888fert4 👌тогда буду искать инфо по нему. Спасибо!
@torri11
@torri11 2 года назад
Сам пример слишком сложный....можно как то попроще на пальцах...из говна и палок...для деревни. спасибо.
@lokifromasgard8524
@lokifromasgard8524 Год назад
Почему-то у меня при выводе графиков и двумерных и трехмерных при добавлении координатной оси запрашивает параметр 111 как пример иначе график не выводится import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D fig = plt.figure(figsize=(7,5)) #ax_3d = Axes3D(fig) ax_3d = fig.add_subplot(111,projection = '3d') x = np.linspace(0,10,20) z = np.cos(x) ax_3d.plot(x,x,z) plt.show() почему так? (спасибо за ответ)
@mirlan19
@mirlan19 3 года назад
спасибо
@МихаилТарасов-щ3з
@МихаилТарасов-щ3з 3 года назад
Спасибо
@shadowgamer-bohdancraft
@shadowgamer-bohdancraft 2 года назад
Я мододел для коекакой игры, и там модели сделаны спомощью какраз этих графиков, так вот мне нужно както вывести данные из файла отвечающего за модель на график (в другом случеи мне прийдёться на угад писатт)
@НиколайСергиенко-т7м
Спасибо большое. Насколько большой график так можно построить?
@selfedu_rus
@selfedu_rus 2 года назад
пока устройство будет справляться с его отображением и будет хватать памяти :)
@НиколайСергиенко-т7м
@@selfedu_rus это здорово) Спасибо ещё раз Надеюсь, сделаю курсовую, единственное надо разобраться, как области графика отсекать
@АнтонКононов-з1у
@АнтонКононов-з1у 2 года назад
Сергей, добрый день, давно уже ваши ролики помогают мне в обучении. По теме - столкнулся с задачей поиска экстремума двух переменных. В интернете совсем не нашел информации по реализации этого на языке Питон. Может, Вы сможете дать мне подсказку в этом вопросе?
@selfedu_rus
@selfedu_rus 2 года назад
Это можно сделать или градиентными методами или методом наименьших квадратах, если используется квадратическая функция потерь. Об этом есть на канале.
@ИльяСуменков-г1ч
А что делать если все нужные библиотеки установлены, а выводит просто пустой график ? 0:56
@ИлларионИванов-л1е
У меня та же проблема. Работаю в GoogleColab. С сайта автора скачал этот код, где указывается конкретный параметр: ax_3d = fig.add_subplot(projection='3d') и всё работает как надо. Ссылка на его сайт есть под этим видео.
@КоляВасильев-о5и
@КоляВасильев-о5и 3 года назад
Спасибо за урок! Скажите пожалуйста, а зачем нам нужны точки которые образуют сетку? Почему нельзя просто взять произвольные точки и значение функции в этих произвольных точках?
@selfedu_rus
@selfedu_rus 3 года назад
сетка в узлах не обязательно может быть квадратной, а любой конфигурации, поэтому, в общем виде задаются через массивы точек
@КоляВасильев-о5и
@КоляВасильев-о5и 3 года назад
@@selfedu_rus Ясно, спасибо!
@КоляВасильев-о5и
@КоляВасильев-о5и 3 года назад
@@selfedu_rus Еще скажите пожалуйста, на что именно влияет сетка? Я думаю что она формирует область над которой будет построен график. Так ли это?
@selfedu_rus
@selfedu_rus 3 года назад
@@КоляВасильев-о5и да, верно, в ее узлах просчитывает график и строится
@КоляВасильев-о5и
@КоляВасильев-о5и 3 года назад
@@selfedu_rus Спасибо!
@m.s.5610
@m.s.5610 Год назад
Вот такую вот ошибку выводит для примера с 3ВD-графиком: Traceback (most recent call last): File "/home/lapadzeltena/MPL/12.py", line 56, in ax_3d.plot(x, y, z) File "/home/lapadzeltena/.local/lib/python3.10/site-packages/mpl_toolkits/mplot3d/axes3d.py", line 1485, in plot zs = np.broadcast_to(zs, np.shape(xs)) File "", line 200, in broadcast_to File "/home/lapadzeltena/.local/lib/python3.10/site-packages/numpy/lib/stride_tricks.py", line 413, in broadcast_to return _broadcast_to(array, shape, subok=subok, readonly=True) File "/home/lapadzeltena/.local/lib/python3.10/site-packages/numpy/lib/stride_tricks.py", line 349, in _broadcast_to it = np.nditer( ValueError: operands could not be broadcast together with remapped shapes [original->remapped]: (58,) and requested shape (63,)
@m.s.5610
@m.s.5610 Год назад
Сам код:: fig = plt.figure(figsize=(7, 4)) ax_3d = fig.add_subplot(projection='3d') x = np.arange(-2*np.pi, 2*np.pi, 0.2) y = np.arange(-2*np.pi, 2*np.pi, 0.2) xgrid, ygrid = np.meshgrid(x, y) zgrid = np.sin(xgrid) * np.sin(ygrid) / (xgrid * ygrid) ax_3d.plot_wireframe(xgrid, ygrid, zgrid) ax_3d.set_xlabel('x') ax_3d.set_ylabel('y') ax_3d.set_zlabel('z') ax_3d.plot(x, y, z) plt.show()
@СергейЧепурко-у8л
@@m.s.5610 В конце кода строка 'ax_3d.plot(x, y, z)' лишняя, мы уже вызываем график строкой 'ax_3d.plot_wireframe(xgrid, ygrid, zgrid)'
@m.s.5610
@m.s.5610 Год назад
@@СергейЧепурко-у8л спасибо. Заработало!
Далее
Это нужно попробовать
00:42
Просмотров 440 тыс.
Ответы Мэил Ру
01:00
Просмотров 1,4 млн
Пишем свой движок 3D-графики
19:25
Это нужно попробовать
00:42
Просмотров 440 тыс.