0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用Matplotlib用上漂亮的插圖

云深之無跡 ? 來源:云深之無跡 ? 作者:云深之無跡 ? 2022-08-15 10:23 ? 次閱讀

matplotlib官方有一份短小精悍的小文檔,今天分享的就是這個:

d875ae70-1ac0-11ed-ba43-dac502259ad0.png

官網的左下角有

自帶的繪圖指南真的很好,分享給大家:

d8ae35ce-1ac0-11ed-ba43-dac502259ad0.png

圖像的繪制一般都是這樣的過程,先導入繪制的庫,準備我們要用的數(shù)據,將畫布建立好,最后就是繪制一下,看看效果。

d8e53880-1ac0-11ed-ba43-dac502259ad0.png

d9096cc8-1ac0-11ed-ba43-dac502259ad0.png

這些是基礎的圖

d933dc9c-1ac0-11ed-ba43-dac502259ad0.png

可以在圖里面修改任意你看到的東西

d95d13d2-1ac0-11ed-ba43-dac502259ad0.png

可以在圖里面繪制多個數(shù)據

d9903550-1ac0-11ed-ba43-dac502259ad0.png

可以輕松的加圖例

d9aeed7e-1ac0-11ed-ba43-dac502259ad0.png

可以將精美的圖片保存下來

d9c68880-1ac0-11ed-ba43-dac502259ad0.png

讓我們以一個小demo開始

d9e9d4f2-1ac0-11ed-ba43-dac502259ad0.png

這里報錯了,原因是mxnet這個庫,是和Numpy一個庫的舊版本強相關的。需要先安裝VS,因為mxnet會使用VS來編譯舊版本的Numpy庫,然后你要卸載matplotlib,在上面的庫安裝好后,再安裝它,這樣就是向下兼容了。其實可以搞虛擬環(huán)境的,但是我不經常用。

da09f214-1ac0-11ed-ba43-dac502259ad0.png

我在報錯的過程中找到,在win安裝,需要VS

打開安裝

dae92786-1ac0-11ed-ba43-dac502259ad0.png

庫其實就是一個pip的命令

db0daa48-1ac0-11ed-ba43-dac502259ad0.png

選擇這些就OK

db26f99e-1ac0-11ed-ba43-dac502259ad0.png

下載安裝

db5723f8-1ac0-11ed-ba43-dac502259ad0.png

我至今沒有登陸

db793254-1ac0-11ed-ba43-dac502259ad0.png

重新再VS的幫助下編譯numpy

db93e194-1ac0-11ed-ba43-dac502259ad0.png

這樣就算安裝完成了

dbb40c62-1ac0-11ed-ba43-dac502259ad0.png

OK

dbd1c9d2-1ac0-11ed-ba43-dac502259ad0.png

會報錯這個

dbf02e22-1ac0-11ed-ba43-dac502259ad0.png

我又不想看我自己寫的東西

報錯信息說matplotlib包用的是后端是ipykernel.pylab.backend_inline,這個后端不支持在編譯器前端顯示。為了支持所有的使用情形,matplotlib能夠產生不同的輸出,而把每一個不同輸出的能力叫做一個后端。而前端就是用戶需要處理的代碼,如繪圖代碼,然后后端做的就是所有看不到的辛苦工作來生成視圖窗口。這里有兩種不同類型的后端:

1.用戶接口后端(又叫做"交互式后端",如pygtk, wxpython, thinter,qt, macosx或者fltk)。

2.硬拷貝后端,也叫做非交互式后端,用來生成圖像文件(PNG,SVG,PDF, PS)

所以matplotlib不顯示圖象就是當前的用戶接口后端不支持前端顯示并交互,所以我們需要自己配置。有兩種方式配置你的后端。

在matplotlibrc文件中設置后端參數(shù):

另外一種方式是使用matplotlib的use()命令。調用use()方法必須在import matplotlib.pyplot或者matplotlib.pylab之前設置

可以使用的后端有 [‘GTK3Agg’, ‘GTK3Cairo’, ‘MacOSX’, ‘nbAgg’, ‘Qt4Agg’, ‘Qt4Cairo’, ‘Qt5Agg’, ‘Qt5Cairo’, ‘TkAgg’, ‘TkCairo’, ‘WebAgg’, ‘WX’, ‘WXAgg’, ‘WXCairo’, ‘agg’, ‘cairo’, ‘pdf’, ‘pgf’, ‘ps’, ‘svg’, ‘template’]

dc295012-1ac0-11ed-ba43-dac502259ad0.png

也就是這樣

dc4165da-1ac0-11ed-ba43-dac502259ad0.png

會出現(xiàn)

dc5b792a-1ac0-11ed-ba43-dac502259ad0.png

很OK,舒服了

dc8b0e9c-1ac0-11ed-ba43-dac502259ad0.png

我們看這個圖肯定不面生

圓圈圈住的地方,就是我們可以控制的地方.

dcb874cc-1ac0-11ed-ba43-dac502259ad0.png

單詞的意思是,解剖

藍色的意思是圖擺件的具體名字,一般一個圖會擁有里面若干的部分。

dcc5fa20-1ac0-11ed-ba43-dac502259ad0.png

最新的圖是這個,更加的精美

dd0e7ea8-1ac0-11ed-ba43-dac502259ad0.png

繪圖的時候,很多時候需要我們將一堆圖放一起展示

dd374478-1ac0-11ed-ba43-dac502259ad0.png

雙個并聯(lián)

dd5dcf76-1ac0-11ed-ba43-dac502259ad0.png

2X2

dd8519dc-1ac0-11ed-ba43-dac502259ad0.png

單框

dda9bd0a-1ac0-11ed-ba43-dac502259ad0.png

我們用的最多的就是這些基礎的圖像

ddd16152-1ac0-11ed-ba43-dac502259ad0.png

使用 Alpha 混合將圖像疊加在一起

將數(shù)據顯示為圖像,即在 2D 常規(guī)柵格上。輸入可以是實際的 RGB(A) 數(shù)據,也可以是 2D 標量數(shù)據,它們將被渲染為偽彩色圖像。要顯示灰度圖像,請使用參數(shù)設置顏色映射 。

ddf23bac-1ac0-11ed-ba43-dac502259ad0.png

def func3(x, y):    return (1 - x / 2 + x**5 + y**3) * np.exp(-(x**2 + y**2))

Z2 = func3(X, Y)

Z2就是這里傳入的參數(shù)

de1c755c-1ac0-11ed-ba43-dac502259ad0.png

當然還有高級的繪圖功能

de43f046-1ac0-11ed-ba43-dac502259ad0.png

數(shù)據在軸上面的縮放形式

de6f6a8c-1ac0-11ed-ba43-dac502259ad0.png

dea4b58e-1ac0-11ed-ba43-dac502259ad0.png

立體到平面的映射轉換

ded7053e-1ac0-11ed-ba43-dac502259ad0.png

不同的線形

def26266-1ac0-11ed-ba43-dac502259ad0.png

上面不同的標記

df197c48-1ac0-11ed-ba43-dac502259ad0.png

不同的顏色定義

df3bd892-1ac0-11ed-ba43-dac502259ad0.png

顏色空間的變換

df6a2bca-1ac0-11ed-ba43-dac502259ad0.png

刻度給了數(shù)據量化的準則

df8d0bb8-1ac0-11ed-ba43-dac502259ad0.png

dfa9a93a-1ac0-11ed-ba43-dac502259ad0.png

上面是定位,下面是格式

dfc54096-1ac0-11ed-ba43-dac502259ad0.png

圖例

dff2fa36-1ac0-11ed-ba43-dac502259ad0.png

顏色條

e00ff028-1ac0-11ed-ba43-dac502259ad0.png

對圖像的注釋

e02f22fe-1ac0-11ed-ba43-dac502259ad0.png

就像這樣

e05d5dae-1ac0-11ed-ba43-dac502259ad0.png

這樣

e0b17eb6-1ac0-11ed-ba43-dac502259ad0.png

高級文本框標注

e0dad37e-1ac0-11ed-ba43-dac502259ad0.png

指示框風格

e11b488c-1ac0-11ed-ba43-dac502259ad0.png

彎曲風格

e1395a3e-1ac0-11ed-ba43-dac502259ad0.png

bar的鏈接樣式

e15df858-1ac0-11ed-ba43-dac502259ad0.png

軸之間的縮放效果

https://matplotlib.org/stable/users/explain/event_handling.html

很多時間我們也關注UI的交互

e18cf130-1ac0-11ed-ba43-dac502259ad0.png

當你點了一個圖像,移動了鼠標,都可以被計算

e1afaca2-1ac0-11ed-ba43-dac502259ad0.png

自帶的有幾種風格

e1d5cb1c-1ac0-11ed-ba43-dac502259ad0.png

對于子圖,當然也可以做更加精細化的調節(jié)

e1f7c4ce-1ac0-11ed-ba43-dac502259ad0.png

也可以做二維平面的轉換

e21c7b34-1ac0-11ed-ba43-dac502259ad0.png

默認的取值范圍

e22f6ab4-1ac0-11ed-ba43-dac502259ad0.png

文本屬性和布局

e25d9b8c-1ac0-11ed-ba43-dac502259ad0.png

文字的風格

e28b400a-1ac0-11ed-ba43-dac502259ad0.png

字型

e2a360ea-1ac0-11ed-ba43-dac502259ad0.png

顏色的名字

e2d87726-1ac0-11ed-ba43-dac502259ad0.png

圖像插值

e2fd91aa-1ac0-11ed-ba43-dac502259ad0.png

還是插值

e32b8bfa-1ac0-11ed-ba43-dac502259ad0.png

圖例的位置

e34c920a-1ac0-11ed-ba43-dac502259ad0.png

動畫的連接風格

e3726be2-1ac0-11ed-ba43-dac502259ad0.png

動畫的箭頭風格

助力每個追愛的人的夢想

加油哇!

問世間情為何物,直叫人屁滾尿流。

論文里面怎么可能缺少漂亮的插圖呢?就使用Matplotliab了~

審核編輯:彭靜
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據
    +關注

    關注

    8

    文章

    7101

    瀏覽量

    89266
  • 圖像
    +關注

    關注

    2

    文章

    1087

    瀏覽量

    40512
  • 繪圖
    +關注

    關注

    0

    文章

    26

    瀏覽量

    19661

原文標題:Matplotlib-SuperShow

文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Python2D繪圖庫Matplotlib會用嗎?

    Matplotlib是一個Python語言的2D繪圖庫,它支持各種平臺,并且功能強大,能夠輕易繪制出各種專業(yè)的圖像。本文是對它的一個入門教程。
    的頭像 發(fā)表于 08-06 09:09 ?3192次閱讀
    Python2D繪圖庫<b class='flag-5'>Matplotlib</b>會用嗎?

    教你如何利用傅里葉變換干漂亮的事

    傅里葉變換是一種在各個領域都經常使用的數(shù)學工具。這個網站將為你介紹傅里葉變換能干什么,為什么傅里葉變換非常有用,以及你如何利用傅里葉變換干漂亮的事。
    的頭像 發(fā)表于 07-10 10:37 ?2259次閱讀

    學習Python大數(shù)據與機器學習必會Matplotlib知識

    Matplotlib練習題十道,來看下你會不會做:準備數(shù)據執(zhí)行:import numpy as npx = np.arange(0,100)y = x*2z = x**21、導入
    發(fā)表于 07-05 17:57

    Matplotlib繪制柱柱狀圖、直方圖、條形圖的使用語法

    Matplotlib - 柱狀圖、直方圖、條形圖 bar() & barh() 所有用法詳解
    發(fā)表于 04-18 08:17

    matplotlib繪圖中編寫的輔助函數(shù)總結

    matplotlib做圖中常用的輔助函數(shù)
    發(fā)表于 05-17 17:12

    數(shù)據可視化之Python-matplotlib概述

    數(shù)據可視化(二):Python-matplotlib
    發(fā)表于 07-22 14:58

    python matplotlib模塊報錯的解決方法

    pyenv下使用python matplotlib模塊的問題解決
    發(fā)表于 10-30 09:12

    電動機效率 matlab,【原創(chuàng)】matplotlib繪制電機效率MAP圖 精選資料分享

    matplotlib簡介matplotlib是Python的第三方工具包,顧名思義它是一個關于矩陣及繪圖的開發(fā)包,里面豐富的函數(shù)以及類似MATLAB的函數(shù)可以讓我們很快繪制一幅圖像(Figure
    發(fā)表于 09-01 06:31

    《電子設計工程》插圖特作規(guī)范

    《電子設計工程》插圖特作規(guī)范插圖分為線條圖和灰度圖。圖片精度不得小于300DPI。插圖一般不超過5幅,一個圖內有多張子圖的按一張計算。
    發(fā)表于 04-09 09:47 ?30次下載

    萬用表使用從入門到精通-孫立群.插圖

    電子發(fā)燒友網站提供《萬用表使用從入門到精通-孫立群.插圖版.txt》資料免費下載
    發(fā)表于 10-09 16:01 ?0次下載

    基于.NET的IETM系統(tǒng)中CCM插圖編碼規(guī)則

    文件)插圖作為IETM中插圖顯示的主要方式,其在裝備信息傳遞上具有顯示、導航、查詢和信息提取等獨特優(yōu)勢,滿足
    發(fā)表于 11-01 16:06 ?2次下載
    基于.NET的IETM系統(tǒng)中CCM<b class='flag-5'>插圖</b>編碼規(guī)則

    用于數(shù)據科學的python必學模塊之Matplotlib的資料說明

    本文檔的主要內容詳細介紹的是用于數(shù)據科學的python必學模塊之Matplotlib的資料說明。
    發(fā)表于 09-18 08:00 ?14次下載
    用于數(shù)據科學的python必學模塊之<b class='flag-5'>Matplotlib</b>的資料說明

    Python的Matplotlib函數(shù)匯總

    本文檔的主要內容詳細介紹的是Python的Matplotlib函數(shù)匯總免費下載。
    發(fā)表于 12-17 08:00 ?2次下載

    Arduino Nano漂亮禮服

    電子發(fā)燒友網站提供《Arduino Nano漂亮禮服.zip》資料免費下載
    發(fā)表于 07-11 09:39 ?0次下載
    Arduino Nano<b class='flag-5'>漂亮</b>禮服

    python中matplotlib和seaborn介紹

    的使用和分析,而數(shù)據的整合最好的方式就是使用可視化的方式將數(shù)據變現(xiàn)出來。 matplotlib和seabornde介紹 在Python中,我們可以使用matplotlib庫和seaborn庫來生成各種圖表。matplotlib
    的頭像 發(fā)表于 10-07 11:16 ?1035次閱讀
    python中<b class='flag-5'>matplotlib</b>和seaborn介紹