绘制有500行的二维随机数组 使散点大小可以反映x值离原点的距离
时间: 2024-09-19 15:13:03 浏览: 30
在Python中,你可以使用matplotlib库来绘制这样的二维随机数组,其中散点的大小与x坐标(即每个数据点到原点的距离)成正比。这里是一个简单的例子:
```python
import numpy as np
import matplotlib.pyplot as plt
# 创建一个500行的二维随机数组
np.random.seed(0) # 设置随机种子以保证结果可复现
data = np.random.randn(500, 2) # 随机生成均值为0,标准差为1的二维数组
# 计算每个点到原点(0, 0)的距离
distances = np.sqrt(data[:, 0]**2 + data[:, 1]**2)
# 创建一个新的图形并设置大小
plt.figure(figsize=(8, 6))
# 使用scatter函数绘制散点图,size参数指定散点大小,c参数指定颜色,根据distance值调整
plt.scatter(data[:, 0], data[:, 1], s=distances, c=distances, cmap='viridis', alpha=0.7)
# 添加标题和坐标轴标签
plt.title("Scatter Plot with Size Reflecting Distance from Origin")
plt.xlabel('X')
plt.ylabel('Y')
# 显示图像
plt.colorbar(label='Distance from Origin') # 显示颜色条以便理解距离对应的颜色范围
plt.show()
```
在这个例子中,`s=distances`会让每个点的大小与其到原点的距离成比例,而`c=distances`则用于给每个点着色,颜色深浅也反映了距离。
阅读全文