使用python實(shí)現(xiàn)三維圖可視化
這是學(xué)習(xí)tensorflow框架中遇到的知識(shí),這里定義函數(shù)的時(shí)候選用的是將x和y封裝起來(lái),方便tensorflow求導(dǎo)。
要慢慢習(xí)慣這種寫法
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D def himmelblau(x): return (x[0]**2 + x[1] - 11)**2 + (x[0] + x[1]**2 - 7)**2 x = np.linspace(-6, 6, 200) y = np.linspace(-6, 6, 200) X, Y = np.meshgrid(x, y) fig = plt.figure(figsize=(12, 10)) ax = fig.gca(projection='3d') ax.plot_surface(X, Y, Z) # 畫曲面 # ax.plot(X, Y, Z) # 畫曲線,好像x, y得是一維的 ax.view_init(60, -30) # 好像是調(diào)成圖的角度 ax.set_xlabel('X') ax.set_ylabel('Y') plt.show()
補(bǔ)充:python3安裝mayavi,實(shí)現(xiàn)3d動(dòng)態(tài)可視化操作
如下代碼呢,是在網(wǎng)上找的,搜索關(guān)鍵詞“python 3d 動(dòng)態(tài)可視化”,從找到代碼到真正執(zhí)行成功,問(wèn)題及解決方法記錄一下。
環(huán)境win8 64位,python3.6
import numpy as np from mayavi import mlab x, y = np.ogrid[-2:2:160j, -2:2:160j] z = abs(x) * np.exp(-x ** 2 - (y / .75) ** 2) pl = mlab.surf(x, y, z, warp_scale=2) mlab.axes(xlabel='x', ylabel='y', zlabel='z') mlab.outline(pl) mlab.show()
問(wèn)題:
雖然有文章已經(jīng)指出安裝mayavi時(shí)安裝順序?yàn)镻yQt4-->Traits-->VTK-->Mayavi,但是并不知道原因,所以還是直接安裝了mayavi,出現(xiàn)如下報(bào)錯(cuò)信息:
Microsoft Visual C++ 14.0 is required
原因:
缺少依賴包
解決:
根據(jù)文章所說(shuō),在https://www.lfd.uci.edu/~gohlke/pythonlibs/中查找到mayavi的相關(guān)依賴,
1、VTK通過(guò)pip install VTK安裝
2.PyQt4無(wú)法通過(guò)pip install PyQt4安裝,所以需要下載到Python安裝目錄的Script下(環(huán)境為python3.6,64位win),通過(guò)命令pip install PyQt4-4.11.4-cp36-cp36m-win_amd64.whl:
3、Traits并不是作為mayavi的依賴包,而是屬于ETS的一部分,同樣通過(guò)下載文件,pip install traits-4.6.0-cp36-cp36m-win_amd64.whl安裝
4、mayavi安裝,同樣通過(guò)下載文件,pip install mayavi-4.6.0+vtk81-cp36-cp36m-win_amd64.whl安裝
注:PyQt4、Traits、mayavi也不是不能通過(guò)pip install直接從網(wǎng)上下載安裝,應(yīng)該還是缺少相關(guān)的依賴,這里只保證通過(guò)文件安裝不出錯(cuò)。
問(wèn)題:
運(yùn)行代碼時(shí)報(bào)錯(cuò):ImportError: numpy.core.multiarray failed to import
原因:
由于mayavi相關(guān)的包安裝的是最新的版本,需要更新numpy
解決:
pip install --upgrade numpy
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
- python開(kāi)發(fā)實(shí)時(shí)可視化儀表盤的示例
- Python數(shù)據(jù)分析之繪圖和可視化詳解
- Python數(shù)據(jù)可視化之繪制柱狀圖和條形圖
- python使用Streamlit庫(kù)制作Web可視化頁(yè)面
- python可視化hdf5文件的操作
- Python編寫可視化界面的全過(guò)程(Python+PyCharm+PyQt)
- python用pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化
- python實(shí)現(xiàn)棋盤覆蓋問(wèn)題及可視化
- pyecharts繪制儀表盤的實(shí)現(xiàn)
相關(guān)文章
python接口自動(dòng)化測(cè)試之接口數(shù)據(jù)依賴的實(shí)現(xiàn)方法
這篇文章主要介紹了python接口自動(dòng)化測(cè)試之接口數(shù)據(jù)依賴的實(shí)現(xiàn)方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-04-04Python實(shí)現(xiàn)保證只能運(yùn)行一個(gè)腳本實(shí)例
這篇文章主要介紹了Python實(shí)現(xiàn)保證只能運(yùn)行一個(gè)腳本實(shí)例,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-06-06使用Python微信庫(kù)itchat獲得好友和群組已撤回的消息
這篇文章主要介紹了使用Python微信庫(kù)itchat獲得好友和群組已撤回的消息,需要的朋友可以參考下2018-06-06非常簡(jiǎn)單的Python識(shí)別圖片驗(yàn)證碼實(shí)現(xiàn)過(guò)程
這篇文章主要介紹了Python驗(yàn)證碼識(shí)別實(shí)現(xiàn)過(guò)程,只需要幾行代碼就可以實(shí)現(xiàn),過(guò)程非常簡(jiǎn)單,有需要的朋友可以借鑒參考下,希望可以有所幫助2021-09-09Python selenium抓取微博內(nèi)容的示例代碼
本篇文章主要介紹了Python selenium抓取微博內(nèi)容的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-05-05