Python繪製三維圖

2021-02-20 阿黎逸陽的代碼

平常我們看到的物體一般是三維空間中的立體圖形,今天跟大家一起來學習用Python繪製立體圖形。

導入繪圖數據

繪製三維圖

2.1  繪製三維線性圖

2.2  用股票數據繪製三維折線圖

2.3  用股票數據繪製三維散點圖

2.4  用股票數據繪製三維柱狀圖

2.5  用bar3d函數繪製三維柱狀圖

import osimport pandas as pd
os.chdir(r'F:\公眾號\6.學習python') date = pd.read_csv("股票數據.csv", encoding = 'GBK')

註:如需文中數據進行練習,可到公眾號中回復「股票數據波動」即可免費獲取。

 1   繪製三維線性圖

為了熟悉三維空間圖形的繪圖原理,首先創建由5個點依次連接而成的三維線圖,具體語句如下:
import matplotlib.pyplot as plt          from mpl_toolkits.mplot3d import Axes3D  
plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False
plt.subplot(projection='3d') x = [0, 0, 1, 4, 5] y = [1, 1, 1, 1, 2] z = [2, 0, 3, 4, 5] plt.plot(x, y, z) plt.xlabel('x軸') plt.ylabel('y軸') plt.title('三維線圖') plt.show()

 2   用股票數據繪製三維折線圖

按年月分組,統計股票收盤價的均值,並以年對應的標籤為x軸,月對應的標籤為y軸,收盤價對應的數值為z軸,繪製三維折線圖,具體語句如下:
date = date.set_index('日期')                  date.index = pd.to_datetime(date.index)        result = date[['收盤價']].groupby([date.index.year, date.index.month]).mean()  plt.subplot(projection='3d')                   plt.plot(result.index.codes[0], result.index.codes[1], result['收盤價'])       plt.xlabel('對應年標籤')                       plt.ylabel('對應月標籤')                       plt.title('按年月繪製收盤價的變化趨勢三維圖')  plt.show()

 3   用股票數據繪製三維散點圖

按年月分組,統計收盤價均值、換手率均值、成交筆數均值,分別作為x軸、y軸、z軸繪製三維散點圖,具體語句如下:
result = date.groupby([date.index.year, date.index.month]).agg(val1=('收盤價', 'mean'), val2=('換手率', 'mean'), val3=('成交筆數', 'mean'))ax = plt.subplot(projection='3d')                            ax.scatter(result['val1'], result['val2'], result['val3'])   plt.xlabel('按年月統計收盤價均值')                           plt.ylabel('按年月統計換手率均值')                           plt.title('股票數據三維散點圖')                              plt.show()

 4   用股票數據繪製三維柱狀圖

按年月分組,統計股票收盤價的均值。並以月對應標籤為x軸,每月對應收盤價均值為y軸,年對應標籤為z軸,繪製三維柱狀圖,具體語句如下:
import matplotlib.cm as cm       
result = date[['收盤價']].groupby([date.index.year, date.index.month]).mean() plt.subplot(projection='3d') plt.bar(result.index.codes[1], result['收盤價'], zs=result.index.codes[0], color=cm.ScalarMappable().to_rgba(result.index.codes[0])) sm = plt.cm.ScalarMappable(norm=plt.Normalize(vmin=result.index.codes[0].min(), vmax=result.index.codes[0].max()))plt.colorbar(sm) plt.xlabel('對應月標籤') plt.ylabel('每月對應收盤價均值') plt.title('三維條形圖') plt.show()

 5   用bar3d函數繪製三維柱狀圖

為了讓三維柱狀圖繪製得更加清晰,用bar3d函數繪製一版三維柱狀圖,具體語句如下:
result = date[['收盤價']].groupby([date.index.year, date.index.month]).mean()   ax = plt.subplot(projection='3d')   ax.bar3d(x=result.index.codes[0], y=result.index.codes[1], z=0, dx=1, dy=1, dz=result['收盤價'], color=cm.ScalarMappable().to_rgba(result.index.codes[0]))  plt.xlabel('年對應標籤')            plt.ylabel('月對應標籤')            plt.title('3維直方圖')              plt.show()

至此,在Python中繪製三維圖已全部講解完畢,感興趣的同學可以自己實現一遍

掃一掃關注我

19967879837

投稿微信號、手機號

相關焦點

  • 三維圖繪製軟體-surfer17
    [名稱]:Surfer_17.1_Build_288[大小]:175 M[語言]:英文 [類型]:三維繪圖[安裝環境]:win7/win8/win10[下載連結]:獲取最新下載連結請到公眾號『大地質家』後臺回覆:surferSufer軟體,是美國Golden Software公司編制的一款以畫三維圖的軟體
  • python畫圖函數大全
    很多時候,我們需要用python畫圖,這樣就可以更加直觀的看到數據的走勢,而不是乾巴巴的數字。
  • PROE三維圖與CAD二維工程圖的轉化
    我是一名國企的設備技術員,從事零部件的加工與設計以及圖紙繪製工作,在七年的工作中對圖紙的繪製有一些自己的心得,在這裡介紹給大家:     首先三維圖比較二維圖的優點在於直觀易懂,二維圖較為抽象,較三維圖來說理解難度較高,尤其對於沒有或者圖紙繪製知識相對較少的人員來說更是難上加難。
  • 如何用python來繪製四邊形-python繪製四邊形圖文教程來了
    python的應用有很多,其中還可以用python來繪製四邊形,下面羽憶教程網為您分享如何用python來繪製四邊形的詳細步驟。python繪製四邊形想要用python繪製四邊形,首先需要調用turtle模塊,這個turtle模塊是python內置的一個非常有趣的模塊,安裝python後自帶的,所以只需要簡單的導入就可以了。1、在python中先導入turtle模塊。
  • Python繪製3D圖形:Axes3D
    3D圖形繪製需要(x,y,z)三組值,下面通過numpy和Axes3D函數會議3D圖形。其中Axes3D是mpl_toolkits.mplot3d中的一個繪圖函數,mpl_toolkits.mplot3d是Matplotlib裡面專門用來畫三維圖的工具包。
  • AutoCAD根據二維圖畫三維圖的思路和方法
    本教程旨在介紹由三視圖繪製三維實體圖時,整個建模過程的步驟和方法。一、分析三視圖,確定主體建模的坐標平面  在拿到一個三視圖後,首先要作的是分析零件的主體部分,或大多數形體的形狀特徵圖是在哪個視圖中。從而確定畫三維圖的第一步――選擇畫三維圖的第一個坐標面。
  • CAD畫三維圖怎麼渲染?一分鐘教你快速操作
    從事過CAD相關工作的都知道,CAD繪製的方式有二維平面圖以及三維圖形,三維圖形,畫三維圖方式也是比較簡單的。那當然三維圖畫完後一般還需要進行渲染操作,步驟也是比較簡潔的。下面就來給大家操作一下CAD畫三維圖進行渲染的使用方法。
  • 萬萬沒想到,Python竟能繪製出如此酷炫的三維圖
    作者 | Jay Alammar轉載自 | 高級農民工通常我們用 Python 繪製的都是二維平面圖,但有時也需要繪製三維場景圖,比如像下面這樣的:這些圖怎麼做出來呢?今天就來分享下如何一步步繪製出三維矢量(SVG)圖。八面體我們先以下面這個八面體為例。
  • CAXA三維CAD教程:平面圖快速生成三維圖
    在我們實際工作中,有時產品屬於逆向開發,圖紙是由第三方提供,而大多是CAD格式,在技術管理中往往要求我們轉化為三維圖進行核對設計。現在就談談如何利用CAXA實體設計快速將平面圖生成三維圖,實現設計效率的提升。第一步:打開實體設計軟體,選擇<特徵&gt;中的<拉伸嚮導>,點工作區任意點,彈出對話框,點擊<完成>。進入草圖環境。
  • Python繪製真正意義上的3D體素色溫圖
    「 3D體素(voxel)色溫圖常用於在三維坐標系下做數據分析和展示,本文從0開始代碼演示其繪製實現.
  • Origin繪圖教程:三維圖形的繪製(附軟體下載)
    Origin不僅可以繪製二維的平面圖形,還可以將數據以三維圖形的方式呈現。
  • 三維圖的繪製
    y");zlabel("因變量z")%讓圖更密xx = linspace(min(x),max(x),1000);yy = linspace(min(y),max(y),1000);zz = griddata(x,y,Z,xx,yy');figure(2);mesh(xx,yy,zz);xlabel("自變量x");ylabel("自變量y");zlabel("因變量z")另外,python
  • 生信分析系列 | 輕鬆利用Python繪製基因表達熱圖
    Python與R在處理統計問題和數據可視化方面同樣強大,但Python擁有更豐富的生態系統和更廣泛的應用場景,如搭建深度學習模型和編碼簡單的算法。對於有編程基礎或項目周期較充裕的科研工作者,Python適合作為職業發展初期的入門與主力程式語言。熱圖(heatmap)是一種直觀的數據可視化方式,使用明暗相間的相鄰色塊表示數值大小。
  • Python中使用matplotlib繪製灰度直方圖
    灰度直方圖在數據統計分析、圖像處理中有著比較廣泛的應用,下面就介紹一下如何在Python中使用matplotlib來繪製灰度直方圖。
  • 用Python為直方圖繪製擬合曲線的兩種方法
    在python中一般採用matplotlib庫的hist來繪製直方圖,至於如何給直方圖添加擬合曲線(密度函數曲線),一般來說有以下兩種方法。方法一:採用matplotlib中的mlab模塊mlab模塊是Python中強大的3D作圖工具,立體感效果極佳。
  • Python繪圖筆記:繪製四色散點圖和誤差條形圖
    figure1#導入繪製散點圖所需要的包import matplotlib.pyplot as pltfrom numpy.random區間的隨機數 #x, y = rand(2, n)表示x,y都返回2行n列的位於(0,1)區間的隨機數 x, y = rand(2, n) #scale表示隨機點的大小,這裡進行了隨機生成 scale = 200.0 * rand(n) #繪製散點圖
  • 使用Python和R繪製數據地圖的十七個經典案例
    這裡,還有一些更好的資源用於使用地圖、mapsdata和ggplot2: 在R中繪製地圖 http://eriqande.github.io/rep-res-web/lectures/making-maps-with-R.html 使用ggplot2軟體包在R中繪製地圖 http://zevross.com/blog/2014/
  • 使用 Python 和 GNU Octave 繪製數據 | Linux 中國
    最低要求是:在 Fedora 安裝它們是很容易的:sudo dnf install python3 python3-numpy python3-scipy python3-matplotlib代碼注釋在 Python中,注釋是通過在行首添加一個 # 來實現的,該行的其餘部分將被解釋器丟棄:fitting_python.py
  • Python-matplotlib 學術型散點圖繪製
    本期推文只要介紹學術散點圖的繪製教程,涉及的內容主要還是matplotlib散點圖的繪製,只不過添加了相關性分析,擬合關係式和顏色映射散點密度(大多數的英文文章中多出現此類圖表
  • python繪製圖形時,如何讓坐標軸刻度線都向內
    python繪製圖形時,有時候論文對圖形中的刻度線要求都要向內,默認是都向外的,兩條語句解決問題。python在繪圖時,一般是年月日這種的坐標軸標註多需要進行字體的旋轉。熱度圖的坐標軸可以給列表,讓坐標軸的刻度根據列表內容進行設置。