如何用Python进行二维笛卡尔坐标与极坐标的转换?

引言

我们知道,二维笛卡尔坐标就是我们平时常见的(x,y)坐标。这个坐标不仅可以表示二维平面的一个点,也可以表示一个起点在原点的向量。

如图,坐标(1,2)不仅表示一个点也可以表示一个向量。而极坐标则是用一个长度坐标和一个角度坐标来表示向量,这个角度是逆时针旋转时向量与x轴正向的夹角。在Python中,这个角度常常用弧度表示。如(5,pi/4)。

笛卡尔坐标转换为极坐标

在Python中,内置的math库中就有相关函数。如atan2( )函数,该函数接受一对笛卡尔坐标,返回对应的弧度。而极坐标中的长度坐标要如何计算呢?可以用计算向量长度的方法,就是我们平时说的坐标平方和开根号。根号的操作可以用math库中的sqrt( )函数,该函数返回传入参数开根号后的结果。

具体实现代码如下:

from math import sqrt   
def length(v):           #计算二维向量长度
    return sqrt(v[0]**2 + v[1]**2) 
def to_polar(vector):   #把笛卡尔坐标转化为极坐标
    x, y = vector[0], vector[1]
    angle =
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明辰星球常住民

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值