Я строю некоторые значения, которые имеют среднее значение и коэффициент вариации этого значения. Дело в том, что я не знаю, как поместить оба значения в сюжет и увидеть его довольно красиво. Мой подход такой:
import matplotlib.pyplot as plt
import numpy as np
colors = ["b", "g", "r", "c", "m", "y", "k", "w"]
models = ["DQN", "DDQN", "DoubleDQN", "DoubleDDQN", "RND", "DQNfD"]
means = [1.90, 0.67, 1.32, 2.02, 0.90, 1.92]
cvs = [1.34, 2.32, 1.44, 1.32, 2.03, 1.33]
cont = 0
for m, c, mean, cv in zip(models, colors, means, cvs):
plt.bar(cont, mean, label = "CV = {:.2f}".format(cv), color = c)
plt.text(cont-0.16, mean + 0.03, "{:.2f}".format(mean))
plt.title("Mean Episode Reward at Test")
plt.ylabel('Mean Episode Reward')
plt.xticks(np.arange(len(models)), models)
cont+=1
plt.legend()
plt.tight_layout()
И вывод такой:
Я хочу видеть значения средних и cvs как графически, так и численно, но я не могу понять, как это сделать (если cv невозможен, не берите в голову). Столбики ошибок для cv - не лучший вариант, так как мы не в том же масштабе, но иметь их в легенде так ужасно.