• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Onway

            我是一只菜菜菜菜鳥...
            posts - 61, comments - 56, trackbacks - 0, articles - 34

            認識matplotlib

            Posted on 2017-02-11 15:12 Onway 閱讀(1672) 評論(0)  編輯 收藏 引用 所屬分類: 使用說明
            一,matplotlib是什么

            python中用于數據庫可視化的2D繪圖庫。


            二,安裝

            http://matplotlib.org/users/installing.html


            三,交互模式與非交互模式

            1,非交互模式

            python shell里面執行

            import matplotlib.pyplot as plt
            plt.plot([12])
            plt.show()

            執行show之后會打開一個GUI窗口顯示,同時交互命令會阻塞。



            2,交互模式

            matplotlib.is_interactive()可以查看當前是否在交互模式;

            matplotlib.pyplot.ion()用于打開交互模式;

            matplotlib.pyplot.ioff()用于關閉交互模式;

            import matplotlib.pyplot as plt
            plt.ion()
            plt.plot([12])

            執行plot之后打開了一個GUI窗口,交互命令沒有阻塞,繼續執行:

            plt.plot([23])

            可以看到在窗口里面再畫了一條線。

            也就是在非交互模式,需要一次畫好再調用show顯示;而交互模式在每次繪制后都能實時看到效果。


            3,ipython的magic command 

            在ipython的%matplotlib也可以打開交互模式。

            在交互模式中如果某些修改沒有自動刷新,可以調用matplotlib.pyplot.draw()刷新。


            四,在jupyter notebook中使用matplotlib

            1,%matplotlib

            以交互模式打開獨立的GUI窗口,對同一個figure的繪制都自動刷新到對應的GUI窗口。


            2,%matplotlib notebook

            同%matplotlib,只是會將GUI窗口嵌入到cell的輸出。



            3,%matplotlib inline

            將繪制的圖轉換為靜態圖片嵌入到cell的輸出。在不同的cell進行繪制效果不會疊加。




            五,figure的各個組成部分

            http://matplotlib.org/faq/usage_faq.html#parts-of-a-figure


            六,matplotlib的兩種繪圖接口

            1matlab風格接口

            所有的plt命令都會應用到自動創建的當前figureaxes對象。使用plt.gcfplt.gca獲取當前figureaxes

            調用plt.plot([1, 2])即繪制到自動創建的figureaxes

            plt.plot([12])
            plt.plot([21])


            2,面向對象接口

            顯式獲得繪制對象,在特定對象執行相應操作。

            fig, ax = plt.subplots()
            ax.plot([12])
            ax.plot([21])


            3,差別

            對于簡單繪制兩種接口的差別不大,復雜情況面向對象接口會更合適。

            另外plt的很多函數都可以直接轉為ax的函數,例如plt.plot() -> ax.plot(),但某些會有差別,例如plt.xlabel() -> ax.set_xlabel()


            七,各類圖形demo

            http://matplotlib.org/gallery.html


            八,API

            http://matplotlib.org/api/index.html



            參考:

            1http://matplotlib.org/index.html#

            2http://matplotlib.org/faq/usage_faq.html#what-is-interactive-mode

            3http://jupyter.org

            4http://www.labri.fr/perso/nrougier/teaching/matplotlib/#introduction

            5http://nbviewer.jupyter.org/github/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.00-Introduction-To-Matplotlib.ipynb#Two-Interfaces-for-the-Price-of-One

            久久久久99精品成人片直播| 国产女人aaa级久久久级| A级毛片无码久久精品免费| 日韩人妻无码一区二区三区久久| 色青青草原桃花久久综合| 久久精品国产只有精品66| 久久国产色AV免费观看| 久久久精品国产sm调教网站 | 国产高潮国产高潮久久久91 | 精品久久久久成人码免费动漫| 久久精品亚洲福利| 久久亚洲国产成人精品无码区| 狠狠色伊人久久精品综合网| 精品久久久久久无码免费| 国内精品久久久久久中文字幕| 国产精品免费久久久久影院| 手机看片久久高清国产日韩| 伊人久久大香线蕉无码麻豆| 综合久久一区二区三区| 亚洲午夜久久久| 欧美一区二区三区久久综合| 国产精品久久影院| 久久综合伊人77777麻豆| 成人综合久久精品色婷婷| 久久久无码精品亚洲日韩蜜臀浪潮| 久久99精品综合国产首页| 久久久久人妻一区精品果冻| 一本色道久久综合狠狠躁| 久久久久夜夜夜精品国产| 久久综合九色综合久99| 亚洲AV日韩精品久久久久| 国产精品成人99久久久久91gav| 久久夜色精品国产亚洲| 久久青青草原综合伊人| 午夜精品久久久久成人| 99久久久精品免费观看国产| 久久久久久久综合日本| 久久se精品一区二区| 中文字幕日本人妻久久久免费| 91久久香蕉国产熟女线看| 一本一道久久综合狠狠老 |