用python画同心圆
时间: 2023-06-30 14:23:11 浏览: 204
好的,以下是用 Python 画同心圆的代码:
```python
import turtle
# 创建画布
canvas = turtle.Screen()
canvas.title("同心圆")
# 创建画笔
pen = turtle.Turtle()
# 设置画笔颜色和线宽
pen.color("red")
pen.width(3)
# 循环画同心圆
for i in range(5):
pen.penup()
pen.goto(0, -i*20)
pen.pendown()
pen.circle(20*i)
# 隐藏画笔
pen.hideturtle()
# 关闭画布
turtle.done()
```
运行代码后,将会弹出一个窗口,显示出同心圆的图形。其中,通过 `pen.circle(20*i)` 来画出不同半径的圆,循环次数越多,圆的半径越大,最终形成同心圆。
相关问题
python画同心圆
要在Python中绘制同心圆,你可以使用`matplotlib`库或`turtle`库。以下是使用这两个库的示例代码:
使用matplotlib库:
```python
import matplotlib.pyplot as plt
def draw_concentric_circles(num_circles, radius):
fig, ax = plt.subplots()
ax.set_aspect(1)
plt.xlim(-radius-1, radius+1)
plt.ylim(-radius-1, radius+1)
plt.gca().set_aspect('equal', adjustable='box')
plt.grid()
for i in range(num_circles):
circle = plt.Circle((0, 0), radius*(i+1)/num_circles, fill=False)
ax.add_patch(circle)
plt.show()
# 绘制4个同心圆,半径分别为1、2、3、4
draw_concentric_circles(4, 4)
```
使用turtle库:
```python
import turtle
def draw_concentric_circles(num_circles, radius):
for i in range(num_circles):
turtle.circle(radius*(i+1))
# 创建一个Turtle对象
my_turtle = turtle.Turtle()
# 绘制4个同心圆,半径分别为50、100、150、200
draw_concentric_circles(4, 50)
# 关闭窗口
turtle.done()
```
希望这可以帮助你绘制同心圆!
Python画同心圆
在Python中,可以使用matplotlib库中的`fill_between`函数或者`patch`模块创建同心圆。这里我们提供一种简单的示例,使用`patch`模块创建填充的圆形区域:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一个固定半径的同心圆
r = 50 # 半径
num_circles = 5 # 同心圆的数量
theta = np.linspace(0, 2*np.pi, 100) # 角度范围
def draw_circle(radius):
circle = plt.Circle((0, 0), radius, fill=False) # 创建圆对象
fig, ax = plt.subplots() # 创建图形上下文
ax.add_artist(circle) # 添加到图中
return fig, ax
# 绘制同心圆
figs = []
for i in range(num_circles):
r_i = r * (i+1)
fig, ax = draw_circle(r_i)
figs.append(fig)
# 显示所有图形
plt.show()
阅读全文