رسم تاریخها
اکنون میتوانیم نمودار دادههای دمایی خود را با استخراج تاریخِ بیشینههای روزانه بهبود بدهیم و آنها را مانند زیر به همراه بیشینهی دما به plot() بدهیم:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
import csv
from datetime import datetime
import matplotlib.pyplot as plt
filename = 'data/sitka_weather_07-2018_simple.csv'
with open(filename) as f:
reader = csv.reader(f)
header_row = next(reader)
# Get dates and high temperatures from this file.
dates, highs = [], []
for row in reader:
current_date = datetime.strptime(row[2], '%Y-%m-%d')
high = int(row[5])
dates.append(current_date)
highs.append(high)
# Plot the high temperatures.
plt.style.use('seaborn')
fig, ax = plt.subplots()
ax.plot(dates, highs, c='red')
# Format plot.
plt.title("Daily high temperatures, July 2018", fontsize=24)
plt.xlabel('', fontsize=16)
fig.autofmt_xdate()
plt.ylabel("Temperature (F)", fontsize=16)
plt.tick_params(axis='both', which='major', labelsize=16)
plt.show()
|
دو لیست خالی برای ذخیرهسازی تاریخ و بیشینهی دما میسازیم. سپس دادههای شامل اطّلاعات تاریخی (row[2]) را به شیء datetime تبدیل میکنیم و آن را به dates الحاق میکنیم. تاریخها و بیشینههای دما را به plot() میدهیم. فراخوانی fig.autofmt_xdate() برچسبهای تاریخ را به صورت مورّب رسم میکند تا از همپوشانی آنها را جلوگیری کند. شکل ۱۶-۲ نمودار بهبودیافته را نشان میدهد.
شکل ۱۶-۲- نمودار که اکنون تاریخها را بر محور x خود دارد معنادارتر است.