如何将两个现有的Matplotlib图合并到一个图中?

如何将两个现有的Matplotlib图合并到一个图中?

要将两个现有的Matplotlib图合并到一个图中,可以按照以下步骤进行操作 −

  • 设置图形大小并调整子图之间和周围的填充。
  • 使用numpy创建x、y1和y2数据点。
  • 使用 plot() 方法绘制(x, y1)和(x, y2)点。
  • 获取当前轴的xy数据点。
  • 使用 argsort() 返回将数组排序的索引。
  • 追加每个图的x和y数据点。
  • 在第二个索引子图上绘制X和Y数据点。
  • 使用 show() 方法显示图形。

示例

import numpy as np
import matplotlib.pyplot as plt

plt.rcParams ["figure.figsize"] = [7.50,3.50]
plt.rcParams ["figure.autolayout"] = True

x = np.linspace(-10, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

plt.subplot(211)
plt.plot(x, y1, color='red', lw=5)
plt.plot(x, y2, color='orange', lw=7)

X,Y = [],[]

for lines in plt.gca().get_lines():
   for x, y in lines.get_xydata():
      X.append(x)
      Y.append(y)

idx = np.argsort(X)
X = np.array(X)[idx]
Y = np.array(Y)[idx]

plt.subplot(212)

plt.plot(X, Y, color='green', lw=0.75)

plt.show()

输出

如何将两个现有的Matplotlib图合并到一个图中?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程