zenith.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:planetplanet 作者: rodluger 项目源码 文件源码
def plot():
    '''

    '''

    fig, ax = pl.subplots(1)
    ax.axis('off')
    fig.subplots_adjust(bottom = 0.2)

    z = np.zeros((100, 100)) * np.nan
    img = pl.imshow(z, cmap = cmap, vmin = 0, vmax = 180., 
                    extent = (-1, 1, -1, 1))
    x = np.linspace(-0.99,0.99,1000)
    ax.plot(x, np.sqrt(0.99 ** 2 - x ** 2), 'k-', lw = 2)
    ax.plot(x, -np.sqrt(0.99 ** 2 - x ** 2), 'k-', lw = 2)
    ax.set_xlim(-1.1,1.1)
    ax.set_ylim(-1.1,1.1)

    axslider = pl.axes([0.3, 0.05, 0.44, 0.03])
    slider = Slider(axslider, r'$\theta$', -180., 180., valinit = 45.)

    def update(val):
        theta = slider.val
        for i, x in enumerate(np.linspace(-1,1,100)):
            for j, y in enumerate(np.linspace(-1,1,100)):
                if (x ** 2 + y ** 2 <= 1):
                    z[j,i] = ZenithAngle(x, y, 1, theta * np.pi / 180) \
                             * 180 / np.pi
        img.set_data(z)
        fig.canvas.draw_idle()

    slider.on_changed(update)
    update(45.)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号