52matlab技术网站,matlab教程,matlab安装教程,matlab下载

标题: 将多个子图的legend放在一起 [打印本页]

作者: matlab的旋律    时间: 2020-12-4 08:17
标题: 将多个子图的legend放在一起
在评价模型当中,经常需要到多模型多指标同时显示,如何实现多个子图的legend放在一起呢?这是可以使用画布figure的suptitle,具体实现代码如下:
  1. import numpy as np
  2. import pickle
  3. import matplotlib.pyplot as plt# plt 用于显示图片


  4. file = ['scnn', 'scg', 'scga']
  5. color = ['-r', '-g', '-b']

  6. # plt.style.use('dark_background')
  7. fig = plt.figure()
  8. ax1 = fig.add_subplot(121)
  9. ax2 = fig.add_subplot(122)
  10. fig.suptitle('')

  11. for k in range(len(file)):
  12.     with open(file[k] + '.txt', 'rb') as file_pi:
  13.            ggn_history = pickle.load(file_pi)
  14.     y_loss = ggn_history['loss']
  15.     y_err = ggn_history['accuracy']
  16.     ax1.plot(y_err[0:20], color[k])
  17.     ax2.plot(y_loss[0:20], color[k])


  18. ax1.set_title('accuracy')
  19. ax2.set_title('loss')
  20. ax1.set_xlabel('epochs')
  21. ax2.set_xlabel('epochs')
  22. fig.legend(('scn', 'scg', 'scga'), ncol=3, loc='upper center')
  23. plt.savefig('loss_acc.png')
  24. plt.show()
复制代码
[attach]320[/attach]





欢迎光临 52matlab技术网站,matlab教程,matlab安装教程,matlab下载 (http://www.52matlab.com/) Powered by Discuz! X3.2