首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matplotlib 使用极坐标绘图

matplotlib 使用极坐标绘图

作者头像
用户6021899
发布2019-08-14 16:21:00
2.3K0
发布2019-08-14 16:21:00
举报

在使用matplotlib.pyplot的subplot()函数创建图形区域时,可以设定参数projection='polar',或者 polar=True,就可以在极坐标下绘制图形。

import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
mpl.rcParams["font.sans-serif"] = ["SimHei"]
pi = np.pi
theta=np.arange(0,2*pi,0.02)#极角,弧度制
r1 = theta /6.0 #半径
r2 = 1*(1 -np.sin(theta))
r3 = 3+ np.cos(7* theta)
e = 0.5
p= 1.0
r4 = e*p / (1 - e*np.cos(theta))
ax1= plt.subplot(221, projection='polar')#使用极坐标
ax1.plot(theta, r1, "g-")#螺旋线
ax2= plt.subplot(222, polar =True)
ax2.plot(theta, r2,'r-',lw=2)#心形曲线
#ax2.set_rlim(0.6,1.2) # 可设定半径范围
#ax2.set_thetalim(pi, 2*pi) # 可设定极角范围
ax3= plt.subplot(223, polar =True)#使用极坐标
ax3.plot(theta, r3,'b-')
ax4= plt.subplot(224, polar =True)#使用极坐标
ax4.plot(theta, r4,'m-') #椭圆
plt.tight_layout()
plt.suptitle("使用极坐标绘图",fontsize =14, color ='b')
plt.show()

也可以在极坐标系下绘制散点图:

import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
mpl.rcParams["font.sans-serif"] = ["SimHei"]
pi = np.pi
N = 80
theta= 2*pi* np.random.rand(N)
r =  30*pi* np.random.rand(N)
marker_size = 3*r
colors = np.random.rand(N)
ax= plt.subplot(111, polar =True)
ax.scatter(theta, r, s = marker_size, c = colors, cmap ="jet", marker ="*")
ax.set_title("极坐标下散点图",color ='b')
plt.show()
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python可视化编程机器学习OpenCV 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档