Python之matplotlib學習(三)


例子11-1:橫坐標時間的處理

from matplotlib.dates import datestr2num,DateFormatter

import matplotlib.dates as dates

fig,ax=plt.subplots()
formatter = DateFormatter('%H')
#設置時間間隔
ax.xaxis.set_major_locator(dates.HourLocator(byhour=range(24), interval=4))
ax.xaxis.set_major_formatter(formatter)
ax.plot_date(datestr2num(time_list),iops_list,'-',label='iops')

 

輸出結果:

例子11-2:縱坐標處理

原圖:

 

從圖上看縱坐標區間過大,不利用查看。

改成200為步長:

import matplotlib.ticker as tk

ax.yaxis.set_major_locator(tk.MultipleLocator(200)) 

 

輸出結果:

例子11-3:縱坐標處理——按照分鍾進行間隔

如下是原始輸出的圖

時間軸每5分鍾一次,過於太密,想改成如下效果:

按照分鍾級別進行匯總,代碼修改的地方如下:

import matplotlib.dates as dates
ax.xaxis.set_major_locator(dates.MinuteLocator(byminute=range(60), interval=10))

>>> import matplotlib.dates as dates
>>> help(dates)

#查看幫助文檔
Here are all the date tickers:
    
        * :class:`MinuteLocator`: locate minutes
    
        * :class:`HourLocator`: locate hours
    
        * :class:`DayLocator`: locate specifed days of the month
    
        * :class:`WeekdayLocator`: Locate days of the week, eg MO, TU
    
        * :class:`MonthLocator`: locate months, eg 7 for july
    
        * :class:`YearLocator`: locate years that are multiples of base
    

     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from DateLocator:
     |  
     |  hms0d = {'byhour': 0, 'byminute': 0, 'bysecond': 0}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM