python怎么画极坐标,python极坐标的绘制

极坐标是个比较复制的东西,下面是实现的效果
在这里插入图片描述
没有设置随机数种子,所以以下代码在你的电脑上可能生成的和我的图不是一模一样的。
下面的代码是一个实现极坐标绘制的代码

import numpy as np
import matplotlib.pyplot as plt
N=20
theta=np.linspace(0.0,2*np.pi,N,endpoint=False)
radii=10*np.random.rand(N)
width=np.pi/4*np.random.rand(N)
ax=plt.subplot(111,projection = 'polar')
bars=ax.bar(theta,radii,width=width,bottom=1.0)
for r,bar in zip(radii,bars):
    bar.set_facecolor(plt.cm.viridis(r/10.))
    bar.set_alpha(0.5)
plt.show()

注解

theta=np.linspace(0.0,2*np.pi,N,endpoint=False)

上面这行代码表示从0.0度到2

    π
   
  
  
   \pi
  
 
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.03588em;">π</span></span></span></span></span>&#xff08;即360度&#xff09;均分为N 份</p> 

width=np.pi/4*np.random.rand(N)

    π
   
  
  
   \pi
  
 
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.43056em; vertical-align: 0em;"></span><span class="mord mathdefault" style="margin-right: 0.03588em;">π</span></span></span></span></span>/4生成的数&#xff0c;形成密度值</p> 

ax=plt.subplot(111,projection = 'polar')

111表示1,1,1将区域分为一行一列取第一个子区域作图
projection表示画的是极坐标图
这里ax是个对象

bars=ax.bar(theta,radii,width=width,bottom=1.0)

这行代码可以改改里面的参数,一改就知道哪里变动了
bar(left,height,width,bottom)
left为绘图时候从哪里开始
heigh为中心点向边缘绘制的长度
weight每个绘制区域角度辐射的范围
bottom表示离原点的距离

最后的for循环是添加颜色

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值