基于python分享极坐标下的几类典型曲线

 更新时间:2022年03月07日 08:57:53   作者:帅帅de三叔  
这篇文章主要介绍了基于python分享极坐标下的几类典型曲线,极坐标系统是一套区别于笛卡尔直角坐标系的二维坐标系统,下面我们在python的基础上讲解及坐标及其下的几种曲线,需要的小伙伴可以参考一下

导言:

忽然发现数学家还是很擅长发明新玩意构造新东西的,如很早的欧几里得几何体系,后来的笛卡尔直角坐标系,还有极坐标系,埃尔朗根纲领,一门学科的发展需要一代又一代的人前赴后继为其添砖加瓦,筑成一座大厦,今天我们来简单介绍一下极坐标系。

一、极坐标

极坐标系统是一套区别于笛卡尔直角坐标系的二维坐标系统,它是指在平面内取一个定点O,然后从O点引一条射线Ox,再选定一个长度单位和角度的正方向(通常取逆时针方向)而张成的一张平面角称为极坐标系统,简称极坐标。其中,点O叫极点,射线Ox叫做极轴,对于平面内任何一点M,用ρ表示线段OM的长度,θ表示从Ox到OM的角度,那么,点M就可以用有序数对 (ρ,θ)来表示,该有序数对就叫点M的极坐标,其中,ρ叫做点M的极径,θ叫做点M的极角。

二、直角坐标系与极坐标互换

在笛卡尔直角坐标系里,任何一点M都可以用一对有序数对(x,y)来表示,其中x叫做点M的横坐标,y叫做点M的纵坐标,这与在极坐标里任何一点可以用极径和极角构成的有序数对 (ρ,θ)来表示类似,这是一种巧合还是一种必然呢?其实极坐标和笛卡尔直角坐标系是可以进行坐标转换的,具体的

(i)极坐标转笛卡尔直角坐标系

已知线段OM的长度为ρ,从M点向x轴和y轴引垂线,设垂足分别是A,B,那么

这样,点M在笛卡尔直角坐标系就可以用有序数对(ρcosθ,ρsinθ)来表示。

(ii)笛卡尔直角坐标系转极坐标

已知点M的坐标为(x,y),那么可以求出OM与x轴的夹角

特别的,当x=0时,θ=90°或270°,这样点M在极坐标系就可以用有序数对

笛卡尔直角坐标系与极坐标系各有其优点,我们平时使用笛卡尔直角坐标系更多些也会更习惯些,但是在有些时候使用极坐标系会更简便些,如两点间的关系用夹角和距离会更容易表示,一些曲线方程,极坐标系下的方程的表达形式更简单些,如双扭线,心形线等。

三、几类典型的极坐标方程

圆:

心形线:

玫瑰线:

阿基米德螺线:

双扭线:

四、代码绘制几类典型极坐标方程图像

圆:

import matplotlib.pyplot as plt #导入绘图模块
import math #导入数学模块

thetas =[] #用来存放极角
rhos = [] #用来存放极径

for i in range(0, 361):
    theta = math.pi/180*i #角度转弧度
    rho = 1
    thetas.append(theta)
    rhos.append(rho)

fig = plt.figure() #新建画布
plt.polar(thetas, rhos, color = "red") #极坐标画图
plt.show()

心形线:

import matplotlib.pyplot as plt #导入绘图模块
import math #导入数学模块

thetas =[] #用来存放极角
rhos = [] #用来存放极径

for i in range(0, 361):
    theta = i*math.pi/180 #角度转弧度
    rho = 1- math.cos(theta) #极径
    thetas.append(theta)
    rhos.append(rho)

fig = plt.figure() #新建画布
plt.polar(thetas, rhos, color = "red") #极坐标画图
plt.show()

玫瑰线:

import matplotlib.pyplot as plt #导入绘图模块
import math #导入数学模块

thetas =[] #用来存放极角
rhos = [] #用来存放极径

for i in range(0, 361):
    theta = i*math.pi/180 #角度转弧度,极角
    rho = math.cos(6*theta) #极径
    thetas.append(theta)
    rhos.append(rho)

fig = plt.figure() #新建画布
plt.polar(thetas, rhos, color = "red") #极坐标画图
plt.show()

阿基米德螺线:

import matplotlib.pyplot as plt #导入绘图模块
import math #导入数学模块

thetas =[] #用来存放极角
rhos = [] #用来存放极径

for i in range(0, 721):
    theta = i*math.pi/180
    rho = 0+2*theta
    thetas.append(theta)
    rhos.append(rho)

fig = plt.figure() #新建画布
plt.polar(thetas, rhos, color = "red") #极坐标画图
plt.show()

双扭线:

import matplotlib.pyplot as plt #导入绘图模块
import math #导入数学模块

thetas =[] #用来存放极角
rhos = [] #用来存放极径

for i in range(0, 361):
    theta = i*math.pi/180
    rho = math.sqrt(2)*(math.cos(2*theta))**(1/2)
    thetas.append(theta)
    rhos.append(rho)

fig = plt.figure() #新建画布
plt.polar(thetas, rhos, color = "red") #极坐标画图
plt.show()

到此这篇关于基于python分享极坐标下的几类典型曲线的文章就介绍到这了,更多相关极坐标下的几类典型曲线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • linux下python使用sendmail发送邮件

    linux下python使用sendmail发送邮件

    这篇文章主要为大家详细介绍了linux下python使用sendmail发送邮件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • python3获取视频文件播放时长的三种方法

    python3获取视频文件播放时长的三种方法

    这篇文章主要介绍了python3获取视频文件播放时长的三种方法,VideoFileClip,CV2以及FFmpeg这三种方法,文章通过代码示例给大家讲解的非常详细,需要的朋友可以参考下
    2024-04-04
  • PyTorch清理CPU缓存的实现步骤

    PyTorch清理CPU缓存的实现步骤

    在使用PyTorch进行深度学习时,频繁的数据和计算可能导致CPU缓存满载,影响性能和内存使用,适时清理CPU缓存有助于管理内存占用,下面就来介绍一下如何使用
    2024-09-09
  • python办公自动化(Excel)的实例教程

    python办公自动化(Excel)的实例教程

    使用Excel自动化处理,将会用到Python第三方库,所以我们需要提前通过来进行安装,下面这篇文章主要给大家介绍了关于python办公自动化(Excel)的相关资料,需要的朋友可以参考下
    2022-11-11
  • python二维键值数组生成转json的例子

    python二维键值数组生成转json的例子

    今天小编就为大家分享一篇python二维键值数组生成转json的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python实战之画哆啦A梦(超详细步骤)

    Python实战之画哆啦A梦(超详细步骤)

    这篇文章主要介绍了Python实战之画哆啦A梦(超详细步骤),文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • python游戏测试工具自动化遍历游戏中所有关卡

    python游戏测试工具自动化遍历游戏中所有关卡

    这篇文章主要为大家介绍了python游戏测试工具自动化遍历游戏中所有关卡示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • pandas.cut具体使用总结

    pandas.cut具体使用总结

    这篇文章主要介绍了pandas.cut具体使用总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • 十个Python经典小游戏的代码合集

    十个Python经典小游戏的代码合集

    这篇文章主要为大家分享十个Python经典的小游戏代码,非常适合Python初学者练手。文中的示例代码讲解详细,感兴趣的小伙伴可以尝试一下
    2022-05-05
  • python Django实现增删改查实战代码

    python Django实现增删改查实战代码

    这篇文章主要介绍了python Django增删改查快速体验,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02

最新评论