Python绘制极坐标基向量详解

 更新时间:2023年08月27日 09:29:24   作者:微小冷  
这篇文章主要介绍了如何利用python绘制极坐标的基向量,文中的示例代码讲解详细,具有一定的的参考价值,感兴趣的小伙伴可以跟随小编一起学习一下

极坐标基向量的推导

极坐标其实很神奇,一方面,它描述的是平直时空,另一方面,任意两点间的坐标差为d r , d θ \text dr, \text d\thetadr,dθ时,两点间的距离却是不固定的。极坐标到直角坐标的转换函数为

x=fx​(r,θ)=rcosθ y=fy​(r,θ)=rsinθ

考虑到行文简洁,在不引起歧义的情况下,用x,y来表示fx​,fy。

对r,θ求偏导数,就可以得到二者在转换为直角坐标是时的变化情况,则

其中

记er​=[∂x/∂r,∂y/∂r],eθ​=[∂x/∂θ,∂y/∂θ],称作极坐标系的基向量。

可以看到,这个基向量在不同的位置(x,y)处的值显然是不同的,将其带入极坐标和直角坐标的换算关系,就可以得到基向量的具体表达式,

er​=[cosθ,−rsinθ]

eθ​=[sinθ,rcosθ]

可视化

下面可以绘制一下这个基向量,采用matplotlib中的quiver函数。

import numpy as np
import matplotlib.pyplot as plt

M, N = 10, 20
r, th = np.indices([M, N])
r = r/10
th = th/N*np.pi*2


X, Y = r*np.cos(th), r*np.sin(th)

U1, V1 = np.cos(th), -r*np.sin(th)
U2, V2 = np.sin(th), r*np.cos(th)

style = dict(width=0.005, headwidth=8, headlength=6, headaxislength=4)
fig, ax = plt.subplots(1, 2, figsize=(8,4))
ax[0].quiver(X, Y, U1, V1, np.sqrt(U1**2+V1**2), **style)
ax[1].quiver(X, Y, U2, V2, np.sqrt(U2**2+V2**2), **style)
plt.tight_layout()
plt.show()

效果如下

到此这篇关于Python绘制极坐标基向量详解的文章就介绍到这了,更多相关Python极坐标内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python基于Pandas读写MySQL数据库

    python基于Pandas读写MySQL数据库

    这篇文章主要介绍了python基于Pandas读写MySQL数据库,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-04-04
  • Python中相见恨晚的技巧(记得收藏)

    Python中相见恨晚的技巧(记得收藏)

    这篇文章主要介绍了一些Python中相见恨晚的使用技巧,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-04-04
  • Pycharm2017版本设置启动时默认自动打开项目的方法

    Pycharm2017版本设置启动时默认自动打开项目的方法

    今天小编就为大家分享一篇Pycharm2017版本设置启动时默认自动打开项目的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • 基于Python的图像阈值化分割(迭代法)

    基于Python的图像阈值化分割(迭代法)

    这篇文章主要介绍了基于Python的图像阈值化分割(迭代法),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • python消费kafka数据批量插入到es的方法

    python消费kafka数据批量插入到es的方法

    今天小编就为大家分享一篇python消费kafka数据批量插入到es的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python import 上级目录的导入

    python import 上级目录的导入

    这篇文章主要介绍了python import 上级目录的导入,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 一文搞懂Python读取text,CSV,JSON文件的方法

    一文搞懂Python读取text,CSV,JSON文件的方法

    文件处理是一种用于创建文件、写入数据和从中读取数据的过程,Python 拥有丰富的用于处理不同文件类型的包,从而使得我们可以更加轻松方便的完成文件处理的工作,本文将来为大家详细讲讲
    2022-06-06
  • 利用Python的tkinter模块实现界面化的批量修改文件名

    利用Python的tkinter模块实现界面化的批量修改文件名

    这篇文章主要介绍了利用Python的tkinter模块实现界面化的批量修改文件名,用Python编写过批量修改文件名的脚本程序,代码很简单,运行也比较快,详细内容需要的小伙伴可以参考一下下面文章内容
    2022-08-08
  • python基础之装饰器详解

    python基础之装饰器详解

    这篇文章主要介绍了python基础之装饰器详解,文中有非常详细的代码示例,对正在学习python的小伙伴们有一定的帮助,需要的朋友可以参考下
    2021-04-04
  • Python模块WSGI使用详解

    Python模块WSGI使用详解

    这篇文章主要为大家详细介绍了Python模块WSGI使用的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论