pyplot smooth pdf
def smooth(scalars, weight):
    '''
        def smooth(scalars: List[float], weight: float) -> List[float]:  # Weight between 0 and 1
    '''
    last = scalars[0]  # First value in the plot (first timestep)
    smoothed = list()
    for point in scalars:
        smoothed_val = last * weight + (1 - weight) * point  # Calculate smoothed value
        smoothed.append(smoothed_val)                        # Save it
        last = smoothed_val                                  # Anchor the last smoothed value

    return smoothed


path_list = [
    # '/media/inksci/doc/deepolicy/deepfire-yun-data/yun113-core32/bf-nn3-0909-1945-1e-5-bs128-rerun2/battle-framework/agent/deepfire/data/reward/',
    # '/media/inksci/doc/deepolicy/data-deepfire-paper/bf-nn3-0909-1945-1e-5-bs128-1217-rerun4.reward/reward/',

    '/media/inksci/doc/deepolicy/data-deepfire-paper/4-rewards-99/bf-nn3-0909-1945.1e-5.reward.ip222/reward/',
    '/media/inksci/doc/deepolicy/data-deepfire-paper/rewards-7envs-paper/bf-nn3-0909-1945.1e-5.reward.ip223/reward/',
    '/media/inksci/doc/deepolicy/data-deepfire-paper/4-rewards-99/bf-nn3-0909-1945.1e-5.reward.ip224/reward/',
    '/media/inksci/doc/deepolicy/data-deepfire-paper/4-rewards-99/bf-nn3-0909-1945-1e-5-bs32-1217-rerun2.reward.ip224/reward/',

]

for color, path in zip(['#ff7043', '#0077bb', '#cc3311', '#33bbee'], path_list):

    last_reward_list = get_last_reward_list(path)

    plt.plot(last_reward_list[:99], color, alpha=0.2)

for color, path in zip(['#ff7043', '#0077bb', '#cc3311', '#33bbee'], path_list):

    last_reward_list = get_last_reward_list(path)

    plt.plot(smooth(last_reward_list[:99], 0.8), color)

plt.xlabel('Episode')
plt.ylabel('Reward')
plt.grid()
plt.ylim(-2, 4)
plt.savefig('im.pdf')
plt.show()
深度学习推荐
深度学习推荐

墨之科技,版权所有 © Copyright 2017-2027

湘ICP备14012786号     邮箱:ai@inksci.com