import matplotlib.pyplot as plt
import matplotlib.font_manager as fm # 字體管理器
def main():
"""
主函數
"""
x_data = ['2011-11', '2011-12', '2012-01', '2012-02', '2012-03', '2012-04', '2012-05']
y_data = [580, 602, 630, 710, 840, 905, 1070]
y_data2 = [520, 542, 515, 583, 568, 595, 627]
my_font = fm.FontProperties(fname="simsun.ttf")
plt.title(' 折線圖', fontproperties=my_font)
plt.figure(figsize=(8, 4)) # 控制輸出圖片大小
ln1, = plt.plot(x_data, y_data, color='red', linewidth=2.0, linestyle='--')
ln2, = plt.plot(x_data, y_data2, color='blue', linewidth=3.0, linestyle='-')
plt.legend(handles=[ln1, ln2], labels=['期望的支出', '實際支出'], prop=my_font)
ax = plt.gca()
ax.spines['right'].set_color('none') # right邊框屬性設置爲none 不顯示
ax.spines['top'].set_color('none') # top邊框屬性設置爲none 不顯示
plt.savefig("123.png")
plt.show()
if __name__ == '__main__':
main()
如果需要中文,需要指定中文字體文件simsun.ttf
這個庫比reportlab更好,折線圖裏x座標數據可以是年月這樣的字符串