要为每一行添加图例,您可以为每一行分配一个标签,然后调用plt.legend() 来绘制图例。
import pandas as pd
import matplotlib.pyplot as plt
data1 = {"x": [10,20,30,40,50],
"y": [0.01,0.02,0.03,0.04,0.05],
"z": [0.11,0.12,0.13,0.14,0.15],
"q": [0.21,0.22,0.23,0.24,0.25],}
df1 = pd.DataFrame (data1, columns = ['x','y','z','q'])
plt.plot(df1['y'], df1['x'], label='y')
plt.plot(df1['z'], df1['x'], label='z')
plt.plot(df1['q'], df1['x'], label='q')
plt.legend()
plt.show()
要将它们绘制在不同的子图上,您可以通过在 plt.subplots() 中定义 nrows 和 ncols 参数来创建 mxn 子图。然后在每个坐标区对象上绘制数据。
import pandas as pd
import matplotlib.pyplot as plt
data1 = {"x": [10,20,30,40,50],
"y": [0.01,0.02,0.03,0.04,0.05],
"z": [0.11,0.12,0.13,0.14,0.15],
"q": [0.21,0.22,0.23,0.24,0.25],}
df1 = pd.DataFrame (data1, columns = ['x','y','z','q'])
figure, axs = plt.subplots(nrows=1, ncols=3, figsize=(8, 4))
axs[0].plot(df1['y'], df1['x'], label='y')
axs[1].plot(df1['z'], df1['x'], label='z')
axs[2].plot(df1['q'], df1['x'], label='q')
axs[0].set_title('x against y')
axs[1].set_title('x against z')
axs[2].set_title('x against q')
plt.show()