在Python中使用pandas和seaborn绘制多折线图中的子图,可以通过以下步骤实现:
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = {'x': [1, 2, 3, 4, 5],
'y1': [10, 15, 7, 12, 9],
'y2': [5, 8, 6, 9, 10],
'y3': [12, 9, 11, 6, 8]}
df = pd.DataFrame(data)
sns.set(style="darkgrid")
fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(10, 8))
sns.lineplot(x='x', y='y1', data=df, ax=axes[0, 0])
sns.lineplot(x='x', y='y2', data=df, ax=axes[0, 1])
sns.lineplot(x='x', y='y3', data=df, ax=axes[1, 0])
axes[0, 0].set_title('Line Plot 1')
axes[0, 1].set_title('Line Plot 2')
axes[1, 0].set_title('Line Plot 3')
axes[0, 0].set_xlabel('X')
axes[0, 0].set_ylabel('Y1')
axes[0, 1].set_xlabel('X')
axes[0, 1].set_ylabel('Y2')
axes[1, 0].set_xlabel('X')
axes[1, 0].set_ylabel('Y3')
plt.tight_layout()
plt.show()
这样就可以在一个图形窗口中创建一个2x2的子图,每个子图都是一个折线图,展示了不同的数据列。你可以根据实际需求修改数据集和子图的数量,以及自定义其他绘图参数。
关于pandas和seaborn的更多信息和用法,你可以参考以下链接:
领取专属 10元无门槛券
手把手带您无忧上云