Python使用matplotlib繪制三維圖形示例
本文實(shí)例講述了Python使用matplotlib繪制三維圖形。分享給大家供大家參考,具體如下:
用二維泡泡圖表示三維數(shù)據(jù)
泡泡的坐標(biāo)2維,泡泡的大小三維,使用到的函數(shù)
plt.scatter(P[:,0], P[:,1], s=S, lw = 1.5, edgecolors = C, facecolors='None')
其中P[:,0], P[:,1]為泡泡的坐標(biāo)數(shù)據(jù),s為泡泡的大小,lw為泡泡的邊線寬度,edgecolors為邊線顏色,facecolors為填充顏色
代碼及注釋
# -*- coding:utf-8 -*- import numpy as np import matplotlib.pyplot as plt fig = plt.figure(figsize=(9,6)) # 泡泡的數(shù)量 n = 50 size_min = 50 size_max = 50*50 # Ring position,rand可以產(chǎn)生2維數(shù)組 P = np.random.rand(n,2) # Ring colors R,G,B,A C = np.ones((n,4)) * (0,0,0,1) # Alpha color channel goes from 0 (transparent) to 1 (opaque) C[:,3] = np.linspace(0,1,n) # Ring sizes S = np.linspace(size_min, size_max, n) # Scatter plot plt.scatter(P[:,0], P[:,1], s=S, lw = 1.5, edgecolors = C, facecolors='None') #range只能排列出整數(shù),在排列小數(shù)時(shí)可以用到np.arange plt.xlim(0,1), plt.xticks(np.arange(0,1.1,0.1)) plt.ylim(0,1), plt.yticks(np.arange(0,1.1,0.1)) plt.show()
運(yùn)行結(jié)果:
三維螺旋線圖
需要導(dǎo)入三維工具mplot3d
from mpl_toolkits.mplot3d import Axes3D
導(dǎo)入了這個(gè)工具后才能在add_subplot時(shí)添加參數(shù)
projection='3d'
完整代碼及注釋
# -*- coding:utf-8 -*- from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] #防止中文亂碼 fig = plt.figure(figsize=(9,6)) #添加參數(shù)projection ax = fig.add_subplot(111,projection='3d') z = np.linspace(0, 6, 1000) r = 1 x = r * np.sin(np.pi*2*z) y = r * np.cos(np.pi*2*z) #c是顏色 ax.plot(x, y, z, label=u'螺旋線', c='r') ax.legend() #存成圖片,支持png格式 # dpi每英寸長(zhǎng)度的點(diǎn)數(shù),畫(huà)出的三維圖是矢量圖,可以設(shè)置保存的dpi plt.savefig('3d_fig.png',dpi=200) plt.show()
注:這里針對(duì)中文顯示問(wèn)題做了處理,具體可以參考《Python使用matplotlib繪圖無(wú)法顯示中文問(wèn)題的解決方法》。
參考網(wǎng)站:
https://matplotlib.org/mpl_toolkits/mplot3d/tutorial.html
https://matplotlib.org/gallery.html
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
- Python使用matplotlib繪制多個(gè)圖形單獨(dú)顯示的方法示例
- Python3使用Matplotlib 繪制精美的數(shù)學(xué)函數(shù)圖形
- python matplotlib模塊基本圖形繪制方法小結(jié)【直線,曲線,直方圖,餅圖等】
- python通過(guò)Matplotlib繪制常見(jiàn)的幾種圖形(推薦)
- Python matplotlib超詳細(xì)教程實(shí)現(xiàn)圖形繪制
- python使用Matplotlib繪制多種常見(jiàn)圖形
- 使用Matplotlib 繪制精美的數(shù)學(xué)圖形例子
- 一文帶你掌握Matplotlib圖形繪制
相關(guān)文章
python列表嵌套引發(fā)的問(wèn)題總結(jié)
這篇文章主要介紹了python列表嵌套引發(fā)的問(wèn)題總結(jié),下面問(wèn)文章引發(fā)問(wèn)題來(lái)自日常工作總結(jié),具有一定的參考價(jià)值需要的小伙伴可以參考一下2022-05-05python+mysql實(shí)現(xiàn)個(gè)人論文管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python+mysql實(shí)現(xiàn)個(gè)人論文管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10Python標(biāo)準(zhǔn)庫(kù)json模塊和pickle模塊使用詳解
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫(kù)json模塊和pickle模塊使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03python實(shí)現(xiàn)模擬器爬取抖音評(píng)論數(shù)據(jù)的示例代碼
這篇文章主要介紹了python實(shí)現(xiàn)模擬器爬取抖音評(píng)論數(shù)據(jù)的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01Python編寫(xiě)簡(jiǎn)化版的文字冒險(xiǎn)游戲的實(shí)例代碼
Python編寫(xiě)簡(jiǎn)化版的文字冒險(xiǎn)游戲:迷失的寶藏,這個(gè)文字冒險(xiǎn)游戲包含了游戲開(kāi)發(fā)的基本要素:游戲狀態(tài)管理、玩家輸入處理、游戲邏輯和循環(huán),通過(guò)擴(kuò)展游戲的內(nèi)容和功能,可以制作出更復(fù)雜、更有趣的游戲,希望這個(gè)實(shí)例代碼能夠激發(fā)你對(duì)游戲編程的興趣和創(chuàng)造力!2024-05-05關(guān)于TensorFlow、Keras、Python版本匹配一覽表
這篇文章主要介紹了關(guān)于TensorFlow、Keras、Python版本匹配一覽表,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03