您可以尝试使用以下代码使用随机标记进行绘图。您还可以调整轴和图例的大小。
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
from pandas import DataFrame
value1 = [10, 20, 30, 40, 50]
value2 = [5, 10, 15, 20, 25]
value3 = [8, 9, 10, 15, 20]
results1 = DataFrame({'SAC': value1, 'TD3': value2, 'DDPG': value3})
color_dict = {'SAC': '#FF0000', 'TD3': '#0000FF', 'DDPG': '#008000'}
# create valid markers from mpl.markers
valid_markers = ([item[0] for item in mpl.markers.MarkerStyle.markers.items() if
item[1] is not 'nothing' and not item[1].startswith('tick') and not item[1].startswith('caret')])
markers = np.random.choice(valid_markers, results1.shape[1], replace=False)
res1 = results1.plot(fontsize=10, linewidth=3, figsize=(10, 8), markersize=16, color=[color_dict.get(x, '#333333') for x in results1.columns])
for i, line in enumerate(res1.get_lines()):
line.set_marker(markers[i])
plt.legend(fontsize=20, loc='lower right')
plt.xlabel("Episode", fontsize=20)
plt.ylabel("Rewards", fontsize=20)
plt.show()
输出: