以画布对象作图:(这就是面向对象编程吗??)
import numpy as np
import matplotlib.pyplot as plt
# print(plt.style.available)
recs = np.load('D:\\fang\\data\\track_data.npy', allow_pickle=True)
print(recs)
t, v = recs['Time'], recs['VMAX']
# plt.plot(recs['Time'], recs['VMAX'], c='r', lw='2', ls='--', marker='o', ms=8, label='VMAX')
# plot([x], y) x为对应数据坐标信息,y是显示数据
fg = plt.figure()
ax = fg.add_subplot(111)
ax.plot(recs['Time'], recs['VMAX'], c='r', lw='2', ls='--', marker='o', ms=8, label='VMAX')
ax.set_xlabel('Date(month-day)', fontsize=10) # 设置x、y坐标轴信息
ax.set_ylabel('Wind speed(m/s)', fontsize=10)
ax.legend(loc=1, fontsize=8) # 设置标注信息位置与大小
ax.set_title('Hagupit 2008', fontsize=12) # 设置标题
ax.axvline(t[18], color='0.7', linestyle='--', lw=2) # 设置竖线 在
ax.tick_params(axis='x', labelsize=8, rotation=25) # 设置x轴坐标大小
ax.annotate('ELDORA', xy=(t[18], v[18]),
xycoords='data', xytext=(-70, +20), # xycoords表示坐标单位 xytext设置文字相对标记点的位置
textcoords='offset points', fontsize=12,
arrowprops=dict(facecolor='b', shrink=0.005)) # 设置箭头参数
fg.savefig('D:\\fang\\fig.pdf')
fg.show()
直接作图:
import numpy as np
import matplotlib.pyplot as plt
# print(plt.style.available)
recs = np.load('D:\\fang\\data\\track_data.npy', allow_pickle=True)
print(recs)
t, v = recs['Time'], recs['VMAX']
plt.plot(recs['Time'], recs['VMAX'], c='r', lw='2', ls='--', marker='o', ms=8, label='VMAX')
# plot([x], y) x为对应数据坐标信息,y是显示数据
plt.xlabel('Date(month-day)', fontsize=10) # 设置x、y坐标轴信息
plt.ylabel('Wind speed(m/s)', fontsize=10)
plt.legend(loc=1, fontsize=8) # 设置标注信息位置与大小
plt.title('Hagupit 2008', fontsize=12) # 设置标题
plt.axvline(t[18], color='0.7', linestyle='--', lw=2) # 设置竖线 在
plt.tick_params(axis='x', labelsize=8) # 设置x轴坐标大小
plt.xticks(rotation=25) # 设置x轴坐标刻度旋转
plt.annotate('ELDORA', xy=(t[18], v[18]),
xycoords='data', xytext=(-70, +20), # xycoords表示坐标单位 xytext设置文字相对标记点的位置
textcoords='offset points', fontsize=12,
arrowprops=dict(facecolor='b', shrink=0.005)) # 设置箭头参数
plt.savefig('D:\\fang\\test.png', dpi=500) # 保存为分辨率为500的png文件
plt.savefig('D:\\fang\\test.pdf') # 保存为pdf(矢量图)
plt.show()