中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
利用Python Matplotlib實(shí)現(xiàn)數(shù)據(jù)動(dòng)態(tài)可視化

以1850-2018年近170年的全球平均氣溫距基準(zhǔn)平均氣溫(1961-1990年)的變化數(shù)據(jù)為例,利用matplotlib python庫(kù),繪制數(shù)據(jù)動(dòng)態(tài)可視化圖。

原文博客地址:http://gaohr.win/site/blogs/2019/2019-10-08-dynamic-plot-matplotlib.html

先預(yù)覽一下動(dòng)態(tài)效果圖:



  • Matplotlib基礎(chǔ)


對(duì)于Matplotlib的安裝、基本使用等,網(wǎng)絡(luò)上資源很多,此處不再過(guò)多的介紹,在此附上官網(wǎng)鏈接,足夠?qū)W習(xí)使用~

* 官方主頁(yè):https://matplotlib.org

* 官方示例:https://matplotlib.org/gallery/index.html

* 官方API:https://matplotlib.org/api/index.html



  • 如何繪制動(dòng)態(tài)圖


一般情況下,利用Matplotlib繪制動(dòng)態(tài)圖時(shí),通常選擇使用Matplotlib的animation模塊,但是該模塊的函數(shù)使用比較繁瑣,不易學(xué)習(xí),開(kāi)發(fā)不靈活。因此,本文介紹一種相對(duì)比較簡(jiǎn)單的辦法,利用動(dòng)態(tài)繪圖和暫停功能來(lái)實(shí)現(xiàn),具體看代碼和相應(yīng)的注釋。


繪制動(dòng)態(tài)圖的函數(shù)如下:

def Plot(x, y1, y2):
    '''
    Create plot
    :param x: 時(shí)間變量數(shù)組
    :param y1: 數(shù)據(jù)數(shù)組1
    :param y2: 數(shù)據(jù)數(shù)組2
    :return:
    '''

    fig, ax = plt.subplots(figsize=(145)) # 創(chuàng)建窗口和子圖
    plt.tick_params(labelsize=16# 設(shè)置刻度字體

    # 設(shè)置時(shí)間軸格式
    fig.autofmt_xdate(rotation=30, ha='center')
    dateFmt = mdate.DateFormatter('%Y')
    ax.xaxis.set_major_formatter(dateFmt)

    years = numpy.arange(int(x[0]), int(x[-1]) + 1)
    yearsDate = GetDateArr(years) # 獲取年份列表
    xs = [yearsDate[0], yearsDate[0
    ys = [y1[0], y1[0
    ys2 = [y2[0], y2[0

    # 添加text
    plt.text(yearsDate[-22], -0.7'Made by GaoHR', fontsize=14, color='#1E90FF')
    plt.text(yearsDate[0], -0.7'Global temperature anomaly datasets (http://www.cru.uea.ac.uk/cru/data/temperature/)',

                 fontsize=14, fontfamily='Times New Roman', color='#333333')
    plt.text(yearsDate[0], 0.5'The global record data were provided by Climatic Research Unit',
                 fontsize=14, fontfamily='Times New Roman', color='#333333')
    plt.text(yearsDate[0], 0.15'The time series shows the combined global land and marine surface temperature record\n'
                                'from 1850 to 2018. The base period is 1961-1990.\n'
                                 'This year was the 4rd warmest on record.',
                                 fontsize=14, fontfamily='Times New Roman', color='#666666')

    # 設(shè)置x、y軸范圍
    # plt.xlim(x_min, x_max)

    plt.ylim(-0.751)

    # 設(shè)置標(biāo)簽、添加刻度標(biāo)線
    ax.set_xlabel('Year', fontsize=16, fontfamily='Times New Roman')
    ax.set_ylabel('Temperature anomaly ($^o$C)', fontsize=16, fontfamily='Times New Roman')
    plt.grid(True, linestyle='--', alpha=0.5)

    # 動(dòng)態(tài)讀取數(shù)據(jù),繪制圖形
    for in range(years[0], years[-1]):
        # 更新x, y1, y2
        xs[0] = xs[1
        ys[0] = ys[1
        ys2[0] = ys2[1
        xs[1] = yearsDate[i - int(x[0
        ys[1] = y1[i - int(x[0
        ys2[1] = y2[i - int(x[0
         
        ax.bar(xs, ys, width=150, color=getColor(y1[i - int(x[0])]))  # 繪制條狀圖
        ax.plot(xs, ys2, color='#555555')  # 繪制曲線圖
        plt.legend(['Smoothed'], loc='upper left', fontsize=14)  # 添加圖例
        plt.pause(0.1)  # 設(shè)置時(shí)間間隔

    plt.tight_layout()
    plt.show()




  • 補(bǔ)充


      本示例數(shù)據(jù)(1850-2018年全球平均氣溫距基準(zhǔn)平均氣溫的變化數(shù)據(jù)可以從 Global temperature anomaly datasets 網(wǎng)站上獲取。

函數(shù)調(diào)用方式、數(shù)據(jù)格式,以及上述代碼中用到的一些函數(shù)等,可以參見(jiàn)原博客: http://gaohr.win/site/blogs/2019/2019-10-08-dynamic-plot-matplotlib.html

附數(shù)據(jù)靜態(tài)圖:

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
python——畫(huà)圖之seaborn學(xué)習(xí)——折線圖和柱形圖的組合。
Matplotlib折線圖(繪圖實(shí)例+代碼詳解)
python數(shù)據(jù)可視化 | DataFrame.plot()函數(shù)繪制數(shù)據(jù)圖
用matplotlib繪制體重變化十年趨勢(shì)圖
數(shù)據(jù)可視化:疫情期間市值增長(zhǎng)top25公司
數(shù)據(jù)可視化----matplotlib.pylot
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服