在python中使用matplotlib绘制的图形数量

时间:2018-03-27 07:17:20

标签: python matplotlib plot data-visualization

我多次使用plt.plot()时感到困惑。根据我的想法,每次调用“plt.plot()'应绘制不同的图表。但在下面的代码中,它只创建了2个图。是因为如果它们具有相同的x值,那么函数会被绘制在同一个图形中吗?如果是这样,有人会如何创建具有相同x值的单独图表? 感谢

plt.plot(x_vals, y_vals,'o',label='Data Points')
plt.plot(x_vals, best_fit, 'r-', label='SVM Regression Line',linewidth=3)
plt.plot(x_vals, best_fit_upper, 'r--', linewidth=2)
plt.plot(x_vals, best_fit_lower, 'r--', linewidth=2)
plt.ylim([0,10])
plt.legend(loc='lower right')
plt.title('Sepal Length vs Pedal Width')
plt.xlabel('Pedal Width')
plt.ylabel('Sepal Length')
plt.show()
plt.plot(train_loss,'k--',label='Train Set Loss')
plt.plot(test_loss,'r--',label='Test Set Loss')
plt.title('L2 Loss per Generation')
plt.xlabel('Generation')
plt.ylabel('L2 Loss')
plt.legend(loc='upper right')
plt.show()

1 个答案:

答案 0 :(得分:1)

要将图表分成不同的图形,您需要在每个图形之前使用plt.figure()。 例如 -

plt.figure(1)
plt.plot(x_vals, y_vals,'o',label='Data Points')
plt.figure(2)
plt.plot(x_vals, best_fit, 'r-', label='SVM Regression Line',linewidth=3)
plt.show() #will show all graphs