```python
import matplotlib.pyplot as plt
创建图形对象
fig, ax = plt.subplots()
绘制第一个圆形
circle1 = plt.Circle((0.2, 0.5), 0.1, color='r')
ax.add_artist(circle1)
绘制第二个圆形
circle2 = plt.Circle((0.5, 0.5), 0.2, color='g')
ax.add_artist(circle2)
绘制第三个圆形
circle3 = plt.Circle((0.8, 0.5), 0.15, color='b')
ax.add_artist(circle3)
设置图形的范围和坐标轴标签
ax.set_xlim([0, 1])
ax.set_ylim([0, 1])
ax.set_aspect('equal')
ax.set_xlabel('X')
ax.set_ylabel('Y')
显示图形
plt.show()
```
这段代码首先导入了matplotlib.pyplot库,并创建了一个图形对象。然后,它使用plot函数绘制了三个圆形,每个圆形都有不同的圆心和半径。最后,它设置了图形的范围和坐标轴标签,并显示了图形。
如果你需要绘制三个球体,并且它们会沿着一条直线前行并反弹,你可以使用Processing语言来实现。以下是一个简单的示例代码:
```processing
void setup() {
size(1024, 768);
ellipseMode(RADIUS);
}
void draw() {
background(255);
// 绘制三个球体
float x1 = random(width);
float y1 = random(height);
float radius1 = random(50, 100);
ellipse(x1, y1, radius1, radius1);
float x2 = random(width);
float y2 = random(height);
float radius2 = random(50, 100);
ellipse(x2, y2, radius2, radius2);
float x3 = random(width);
float y3 = random(height);
float radius3 = random(50, 100);
ellipse(x3, y3, radius3, radius3);
// 更新球体位置
x1 += random(-1, 1);
y1 += random(-1, 1);
x2 += random(-1, 1);
y2 += random(-1, 1);
x3 += random(-1, 1);
y3 += random(-1, 1);
// 检测碰撞并反弹
if (dist(x1, y1, x2, y2) < radius1 + radius2) {
x1 = x2;
y1 = y2;
}
if (dist(x1, y1, x3, y3) < radius1 + radius3) {
x1 = x3;
y1 = y3;
}
if (dist(x2, y2, x3, y3) < radius2 + radius3) {
x2 = x3;
y2 = y3;
}
}
```
这段代码在每次draw函数调用时都会生成三个随机位置的球体,并检测它们是否相互碰撞。如果检测到碰撞,球体会反弹。