亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python+matplotlib如何實現量場圖的繪制

發布時間:2021-12-01 15:10:44 來源:億速云 閱讀:287 作者:iii 欄目:開發技術

這篇文章主要介紹“Python+matplotlib如何實現量場圖的繪制”,在日常操作中,相信很多人在Python+matplotlib如何實現量場圖的繪制問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python+matplotlib如何實現量場圖的繪制”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

    1. 量場圖概述

    什么是量場圖?

    • 量場圖又名振動圖、量場圖。使用一組矢量箭頭進行表示

    • 量場圖表示一個向量對應另一個向量

    • 形成場的量為向量,稱為向量場

    量場圖使用場景

    • 量場圖通常使用在物理學中如電磁場表示

    • 量場圖也用于地磁圖繪制根據各地磁臺的觀測的數據進行繪制表示

    • 在物理中常用的向量場有風場、引力場、電磁場、水流場等

    繪制量場圖方法

    import matplotlib.pyplot as plt
     
    plt.quiver()

    2. 量場圖屬性

    設置顏色

    向量顏色關鍵字:color or facecolor

    當facecolor與color同時設置時,會優先facecolor

    取值范圍

    • 表示顏色的英文單詞:如紅色"red"

    • 表示顏色單詞的簡稱如:紅色"r",黃色"y"

    • RGB格式:十六進制格式如"#88c999";(r,g,b)元組形式

    • 也可以傳入顏色列表

    設置透明度

    關鍵字:alpha

    取值為0~1

    設置向量箭頭尺寸

    關鍵字:units

    默認值為:width

    可取值有:{'width', 'height', 'dots', 'inches', 'x', 'y', 'xy'}

    • width,height:代表軸的寬度、軸的高度

    • dots,inches: 基于圖形dpi的像素或者英寸

    • x,y,xy:x,y或者(x^2+y^2)的平方根的數據

    設置坐標中向量箭頭位置

    關鍵字:pivot

    默認值為:tail

    可以取值:{'tail', 'mid', 'middle', 'tip'}

    設置向量箭頭寬度

    關鍵字:width

    默認值為:0.005

    取值為類型為:浮點型

    3. 繪制量場圖步驟

    我們在繪制量場圖時,同樣需要使用matplotlib.pyplot,因此我們來看一下繪制量場步驟

    導入matplotlib.pyplot類

    import matplotlib.pyplot as plt

    使用numpy庫里的arange(),random(),sin(),cos()等方法準備x,y軸數據

    x = np.arange(-10,10,1)
    y = np.arange(-10,10,1)

    調用numpy.meshgrid()方法生成二維網格坐標

    u,v = np.meshgrid(x,y)

    調用pyplot.quiver(x,y,u,v,c)繪制量場圖

    plt.quiver(x,y,u,v,alpha=0.4)
    參數說明
    x一維、二維數組或者序列,表示箭頭位置的x坐標
    y一維、二維數組或者序列,表示箭頭位置的y坐標
    u一維、二維數組或者序列,表示箭頭向量的x分量
    v一維、二維數組或者序列,表示箭頭向量的y分量
    c一維、二維數組或者序列,表示箭頭顏色

    調用pyplot.show()渲染顯示圖標

    plt.show()

    Python+matplotlib如何實現量場圖的繪制

    4. 小試牛刀

    我們學習以上繪制量場圖的方法,我們來繪制一個高中物理中場景的電磁場圖

    Python+matplotlib如何實現量場圖的繪制

    調用numpy.meshgrid()方法對x,y軸數據生成二維列表

    調用numpy.gradient()對u,v生成梯度數據

    a = np.arange(-2,2,0.2)
    b = np.arange(-2,2,0.25)
    x,y = np.meshgrid(a,b)
    z = x*np.exp(-x**2-y**2)
    v,u = np.gradient(z,0.2,0.2)
     
    plt.quiver(x,y,u,v,color="pink",pivot="tip",units="inches")
     
    plt.scatter(x,y,color="b",s=0.05)
     
    plt.show()

    到此,關于“Python+matplotlib如何實現量場圖的繪制”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    高密市| 汉中市| 西丰县| 奈曼旗| 盘锦市| 大荔县| 天长市| 城市| 道孚县| 章丘市| 南宫市| 昂仁县| 讷河市| 肥城市| 太康县| 邮箱| 平顶山市| 德阳市| 麟游县| 玉门市| 新营市| 锦州市| 舒兰市| 翁牛特旗| 阿鲁科尔沁旗| 兴安盟| 南涧| 双流县| 淮阳县| 湖州市| 同德县| 洪雅县| 崇明县| 苏尼特右旗| 观塘区| 会同县| 新巴尔虎右旗| 红河县| 吉安县| 西乡县| 巴彦县|