python中极坐标等值线的绘制

2024-09-28 22:32:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用极坐标绘制等高线图,但我做不到。我从一个被接受的类似问题的answer中得到了建议,但这导致了只绘制轴,而在我的例子中没有绘制轮廓。
我附上以下代码:

def plotcnt():
   import matplotlib.pyplot as plt
   import numpy as np
   azimuths = np.radians(np.linspace(0, 360, 360))
   zeniths = np.arange(0, 2.1,20)
   r,theta=np.meshgrid(zeniths,azimuths)

   values= r*np.log(theta+2)


   fig, ax = plt.subplots(subplot_kw=dict(projection='polar'))
   ax.contourf(theta, r, values)
   plt.show()


plotcnt()

Tags: answerimportasnp绘制pltax建议
1条回答
网友
1楼 · 发布于 2024-09-28 22:32:30

你用的方式np.arange公司创建zeniths变量将只给您[0]。在

如果改用linspace,它将提供一些数据来显示。在

def plotcnt():
  import matplotlib.pyplot as plt
  import numpy as np
  azimuths = np.radians(np.linspace(0, 360, 360))
  zeniths = np.linspace(0, 2.1,20)
  r,theta=np.meshgrid(zeniths,azimuths)

  values= r*np.log(theta+2)


  fig, ax = plt.subplots(subplot_kw=dict(projection='polar'))
  ax.contourf(theta, r, values)
  plt.show()

plotcnt()

希望这有帮助。在

干杯!在

相关问题 更多 >