微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我怎样才能通过python获得这个图?

如何解决我怎样才能通过python获得这个图?

我写了这段代码

import matplotlib.pyplot as plt
import numpy as np

fig=plt.figure()

r=np.arange(1,2)
theta=np.linspace(0,np.pi/2)

x=r*np.cos(theta)
y=r*np.sin(theta)

plt.plot(x,y)
plt.show()

并得到这张图。

pyplot output

但我想得到下面的图表。

desired output

我对如何设置合适的 r 范围感到困惑。 我想设置 r 的范围 1<=r<=2,但不知道该怎么做。 如何修改我的代码

解决方法

enter image description here

import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
theta = np.linspace(0,np.pi/2)

for i in range(1,3):
    x = []
    y = []
    for t in theta:
       if t == 0:
          y.append(0)
          x.append(3-1)
       elif t == np.pi/2:
          y.append(3-1)
          x.append(0)
       else:
          x.append(i*np.cos(t))
          y.append(i*np.sin(t)) 
   plt.plot(x,y)
plt.show()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。