效果
代码
from datetime import datetime
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
data_map_list = [
{'2020/07/01': [1, 10]},
{'2020/07/02': [2, 12]},
{'2020/07/03': [3, 14]},
{'2020/07/04': [4, 16]},
{'2020/07/05': [3, 12]},
{'2020/07/06': [6, 18]},
{'2020/07/07': [2, 19]},
{'2020/07/08': [8, 11]},
]
# 生成横纵坐标信息
dates = []
y_list = []
first_dict = data_map_list[0]
print("first_dict [{0}]".format(first_dict))
first_dict_key = list(first_dict.keys())[0]
first_data_list = first_dict[first_dict_key]
y_list_len = len(first_data_list)
print("y_list_len [{0}]".format(y_list_len))
for i in range(y_list_len):
y_list.append([])
for one_map in data_map_list:
for k, v in one_map.items():
dates.append(k)
for i in range(y_list_len):
y_list[i].append(v[i])
print("y_list {0}".format(y_list))
xs = [datetime.strptime(d, '%Y/%m/%d').date() for d in dates]
# 配置横坐标
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d'))
#plt.gca().xaxis.set_major_locator(mdates.DayLocator())
# Plot
for one in y_list:
plt.plot(xs, one)
plt.gcf().autofmt_xdate() # 自动旋转日期标记
plt.show()
引用