本文將為您詳細介紹如何使用Python按照日期(時間)來畫折線圖。
一、準備工作
首先,我們需要安裝Matplotlib包,該包提供了各種繪圖函數,包括折線圖、柱形圖、散點圖等等。可以使用以下命令安裝:
pip install matplotlib
如果您使用的是Anaconda等科學計算環境,則已經默認安裝了Matplotlib。
二、繪製折線圖
1、導入模塊
在使用Matplotlib之前,需要導入該模塊。
import matplotlib.pyplot as plt
2、準備數據
在繪製折線圖之前,我們需要準備相應的數據。假設我們要繪製一張每日銷售額的折線圖,數據如下:
date = ['20210101', '20210102', '20210103', '20210104', '20210105', '20210106', '20210107']
sales = [100, 50, 200, 180, 300, 280, 150]
其中,date為日期字符串,sales為每日銷售額。
3、轉換日期格式
雖然我們已經有了日期字符串,但是Matplotlib默認無法處理該格式。因此,我們需要將日期字符串轉換為可以處理的日期格式。
from datetime import datetime
date = [datetime.strptime(d, '%Y%m%d').date() for d in date]
上述代碼中,我們使用datetime模塊中的strptime函數將日期字符串轉換為日期類型,並且使用date()函數提取日期。
4、繪製折線圖
現在,我們終於可以繪製折線圖了。使用以下代碼即可:
plt.plot(date, sales)
plt.show()
運行上述代碼,即可看到繪製好的折線圖。
三、優化圖像
雖然我們已經成功繪製出折線圖,但是這張圖還有很多需要優化的地方。
1、添加標題和標籤
一張好的圖像應該具有標題和標籤,以方便觀賞者理解。我們可以使用以下代碼來添加標題和標籤:
plt.title('Daily Sales in January 2021')
plt.xlabel('Date')
plt.ylabel('Sales')
plt.plot(date, sales)
plt.show()
在上述代碼中,我們使用title函數添加標題,使用xlabel和ylabel函數添加X軸和Y軸標籤。
2、調整坐標軸範圍
有時候,我們需要調整坐標軸的範圍,以便更好地展示數據。例如,如果銷售額的最大值為500,則我們可以將Y軸的範圍設置為0-600,以便更好地展示數據。
plt.title('Daily Sales in January 2021')
plt.xlabel('Date')
plt.ylabel('Sales')
plt.ylim([0, 600])
plt.plot(date, sales)
plt.show()
在上述代碼中,我們使用ylim函數調整Y軸的範圍。
3、調整日期顯示格式
在默認情況下,Matplotlib會自動選擇最佳的日期格式,並自動旋轉X軸標籤以避免重疊。但是如果我們希望使用特定的日期格式,則可以使用以下代碼:
import matplotlib.dates as mdates
plt.title('Daily Sales in January 2021')
plt.xlabel('Date')
plt.ylabel('Sales')
plt.ylim([0, 600])
plt.plot(date, sales)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%m/%d'))
plt.gcf().autofmt_xdate()
plt.show()
在上述代碼中,我們首先導入了matplotlib.dates模塊,然後使用DateFormatter函數設置日期格式,並使用gca函數獲取當前圖形的Axes對象。最後,使用autofmt_xdate函數自動旋轉X軸標籤。
四、總結
本文為您介紹了如何使用Python按照日期(時間)來畫折線圖。我們首先導入Matplotlib模塊,並準備好相應的數據。然後,我們需要將日期字符串轉換為可以處理的日期格式,並繪製出折線圖。最後,我們對圖像進行了優化,添加了標題、標籤,並調整了坐標軸範圍,同時調整了日期顯示格式。
原創文章,作者:BQVQU,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/374996.html