• <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

            認(rèn)識(shí)matplotlib

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

            python中用于數(shù)據(jù)庫(kù)可視化的2D繪圖庫(kù)。


            二,安裝

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


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

            1,非交互模式

            python shell里面執(zhí)行

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

            執(zhí)行show之后會(huì)打開一個(gè)GUI窗口顯示,同時(shí)交互命令會(huì)阻塞。



            2,交互模式

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

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

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

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

            執(zhí)行plot之后打開了一個(gè)GUI窗口,交互命令沒有阻塞,繼續(xù)執(zhí)行:

            plt.plot([23])

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

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


            3,ipython的magic command 

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

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


            四,在jupyter notebook中使用matplotlib

            1,%matplotlib

            以交互模式打開獨(dú)立的GUI窗口,對(duì)同一個(gè)figure的繪制都自動(dòng)刷新到對(duì)應(yīng)的GUI窗口。


            2,%matplotlib notebook

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



            3,%matplotlib inline

            將繪制的圖轉(zhuǎn)換為靜態(tài)圖片嵌入到cell的輸出。在不同的cell進(jìn)行繪制效果不會(huì)疊加。




            五,figure的各個(gè)組成部分

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


            六,matplotlib的兩種繪圖接口

            1matlab風(fēng)格接口

            所有的plt命令都會(huì)應(yīng)用到自動(dòng)創(chuàng)建的當(dāng)前figureaxes對(duì)象。使用plt.gcfplt.gca獲取當(dāng)前figureaxes

            調(diào)用plt.plot([1, 2])即繪制到自動(dòng)創(chuàng)建的figureaxes

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


            2,面向?qū)ο蠼涌?/span>

            顯式獲得繪制對(duì)象,在特定對(duì)象執(zhí)行相應(yīng)操作。

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


            3,差別

            對(duì)于簡(jiǎn)單繪制兩種接口的差別不大,復(fù)雜情況面向?qū)ο蠼涌跁?huì)更合適。

            另外plt的很多函數(shù)都可以直接轉(zhuǎn)為ax的函數(shù),例如plt.plot() -> ax.plot(),但某些會(huì)有差別,例如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

            国产精品美女久久久网AV| 亚洲中文字幕无码久久综合网| 久久人人爽人人爽人人片av麻烦 | 久久久久成人精品无码中文字幕 | 久久免费美女视频| 97久久久久人妻精品专区| 亚洲国产欧洲综合997久久| 精品国产乱码久久久久久人妻| 久久婷婷五月综合97色直播| 久久精品中文无码资源站| yy6080久久| 午夜精品久久久久久99热| 久久久久人妻精品一区二区三区 | 久久免费视频观看| 国产成人综合久久精品尤物| 久久国产成人精品国产成人亚洲| 国产精品青草久久久久福利99| 国产亚洲精久久久久久无码AV| 久久国产精品一区| 久久亚洲精品成人无码网站| 久久精品中文騷妇女内射| 国产精品久久久福利| 久久人人超碰精品CAOPOREN | 伊人久久大香线蕉综合影院首页| 狠狠综合久久AV一区二区三区 | 99久久www免费人成精品 | 亚洲欧洲久久av| 久久久久久久久久久久中文字幕| 精品国产VA久久久久久久冰| 久久精品女人天堂AV麻| 色婷婷综合久久久中文字幕 | 久久国产精品无码一区二区三区 | 欧美精品国产综合久久| 99久久超碰中文字幕伊人| 久久久久亚洲av毛片大| 精品国产乱码久久久久久1区2区| 精品无码久久久久久国产| 亚洲精品tv久久久久久久久| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 无码人妻久久一区二区三区| 狠狠精品干练久久久无码中文字幕|