画一个坐标系,同时显示两条直线,效果图如下:
功能点:
同时显示两个纵坐标数据
显示图片名称
图片最大化保存 到本地
在图片某个位置显示字符信息
不同的线名称提示
代码如下:
import matplotlib.pyplot as pltdef print_picture(data_path, x:list, y1:list, y2:list):# 设置显示网格plt.grid(True)wm = plt.get_current_fig_manager()# 最大化,方便保存的是大图片wm.window.state('zoomed')plt.plot(x, y1, label='y=x') # , color='blue' 蓝色plt.plot(x, y2, label='y=2*x + 1') # , color='yellow' 橙色# 图片名称pictureName = 'test-picture'plt.title(pictureName)# 图片右上角打印文字plt.text(len(x)*0.85, max(y2)*0.85, 'info xxxx')# 显示labelplt.legend()# 设置 x y坐标轴plt.xlabel('X')plt.ylabel('y1/y2')# 需要暂停显示,否则保存的就是小图片plt.pause(0.1)picture_name = data_path + '\\%s.jpg' % pictureName# 保存图片到本地plt.savefig(picture_name)plt.close()if __name__ == '__main__':data_path = 'D:\工作文件\mysql_data'# 生成三个数组,分别存放 x 和两个y数据x = []y1 = []y2 = []i = 0while i < 100:x.append(i + 1)y1.append(x[i])y2.append(2 * x[i] + 1)i += 1print_picture(data_path, x, y1, y2)