两个px.scatter如何画在一个子图里
时间: 2024-10-04 07:04:45 浏览: 28
在Matplotlib库中,如果你想要在同一张子图上绘制两个不同数据集的散点图(px.scatter),你可以按照以下步骤操作:
1. 首先导入所需的库:
```python
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
```
2. 创建或准备数据,这里假设你有两个DataFrame,比如df1和df2:
```python
df1 = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
df2 = pd.DataFrame({'x': [7, 8, 9], 'y': [10, 11, 12]})
```
3. 使用`plt.subplots()`创建一个新的子图,如果需要的话:
```python
fig, ax = plt.subplots()
```
4. 对于每个DataFrame,分别调用`ax.scatter()`函数,传入对应的列名作为x和y坐标:
```python
ax.scatter(df1['x'], df1['y'], label='Data Set 1', color='blue')
ax.scatter(df2['x'], df2['y'], label='Data Set 2', color='red')
```
5. 可选地添加图例、标题和轴标签等:
```python
ax.legend() # 添加图例
ax.set_title('Scatter plot of two datasets')
ax.set_xlabel('X Axis Label')
ax.set_ylabel('Y Axis Label')
```
6. 最后,展示子图:
```python
plt.show()
```
阅读全文