100个python算法超详细讲解:绘制空心圆

完整版下载超详细Python算法案例讲解100例.zip-Python文档类资源-CSDN下载

1.问题描述
在屏幕上绘制一个空心的圆。
2.问题分析
绘制圆的方法很多,我们可以根据圆的方程来进行绘制。圆的方
程有标准方程和参数方程,这里采用圆的参数方程来绘制圆。
3.算法设计
圆的参数方程如下: 

100个python算法超详细讲解:绘制空心圆 

其中r表示圆的半径,圆心在坐标原点(0,0)上。如果圆心不在坐标
原点(0,0)上,而在点(a,b)上,那么就相当于将圆心在(0,0)上的圆平移到
圆心为(a,b)上,其原理图如图11.9所示。

100个python算法超详细讲解:绘制空心圆 

4.完整的程序
根据上面的分析,编写程序如下:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @author : liuhefei
# @desc: 绘制圆形
import numpy as np
import matplotlib.pyplot as plt
if __name__ == "__main__":
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用于正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
# 圆半径
r = 2.0
# 圆心坐标
a , b = (0. , 0.)
# 参数方程
Circle = np.arange(0, 2*np.pi, 0.01)
x = a + r * np.cos(Circle)
y = b + r * np.sin(Circle)
fig = plt.figure()
axes = fig.add_subplot(111)
axes.plot(x, y)
axes.axis('equal')
plt.title("圆形")
plt.show()

 5.运行结果
在PyCharm下运行程序,结果如图11.10所示。

100个python算法超详细讲解:绘制空心圆

6.拓展训练
实现函数y=x 2 -2x+1的图形与圆的图形叠加显示。
完整的代码如下:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @author : liuhefei
# @desc: 绘制一元二次方程曲线和圆形
import numpy as np
import matplotlib.pyplot as plt
if __name__ == "__main__":
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用于正常显示中文标签
用来正常显示负号
plt.rcParams['axes.unicode_minus'] =False # 用来正常显示负号
x = y = np.arange(-8, 8, 0.1)
x, y = np.meshgrid(x, y)
# 绘制x2 + y2 = 25 的圆形
plt.contour(x, y, x ** 2 + y ** 2, [25])
# 一元二次方程 y = x2 - 2x + 1
x1 = np.linspace(-3, 3, 50)
print(x1)
y1 = x1 ** 2
plt.plot(x1, y1, linewidth=4) # 设置线宽
plt.plot(x1, y1, 'g') # 设置线条为绿色
plt.title("一元二次方程曲线与圆形")
plt.axis('scaled')
plt.show()

 在PyCharm下运行程序,结果如图11.11所示。

100个python算法超详细讲解:绘制空心圆

 

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
上一篇 2022年6月15日 上午11:29
下一篇 2022年6月15日 上午11:31

相关推荐

本站注重文章个人版权,不会主动收集付费或者带有商业版权的文章,如果出现侵权情况只可能是作者后期更改了版权声明,如果出现这种情况请主动联系我们,我们看到会在第一时间删除!本站专注于人工智能高质量优质文章收集,方便各位学者快速找到学习资源,本站收集的文章都会附上文章出处,如果不愿意分享到本平台,我们会第一时间删除!