Вот одно решение для вас.
Объяснение : создайте свои y-данные в списке (y_list
здесь) и сохраните свои метки (labels
здесь). Затем просто прокрутите списки, чтобы построить по одному, используя цикл for
, как вы и просили.
Чтобы определить цвета с помощью цветовой карты, например, rainbow
, создайте список цветов, используя количество линий (графиков), которое у вас есть (3 в примере ниже). Затем просто назначьте эти цвета в цикле for
, и вы получите желаемый график.
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import cm
fig, ax = plt.subplots(1, 1)
Semesters=np.arange(1,7,1)
y_list = [np.arange(10,16,1), np.arange(20,26,1), np.arange(51,57,1)]
labels = ["To Reach 120", "To Reach 100", "To Reach 80"]
# Define the colors to be used using rainbow map (or any other map)
colors = [cm.rainbow(i) for i in np.linspace(0, 1, len(y_list))]
# Plot the lines using a for loop
for i in range(len(y_list)):
plt.plot(Semesters, y_list[i], label=labels[i], linewidth=2., color=colors[i])
ax.set_xticks(Semesters)
plt.legend(bbox_to_anchor=(0.85, .3), loc=2, borderaxespad=0.)
