Как мне добавить легенду для matplotlib, которая состоит из имен индексов массива вместо значений внутри индекса?

#python #excel #pandas #matplotlib

#python #excel #pandas #matplotlib

Вопрос:

новичок в программировании здесь.

Я пытаюсь построить график на основе списка, но массивы списков содержат ряд значений внутри них. Я пытаюсь использовать цикл for для отображения всех категорий на одном графике. Когда я попытался построить график, все прошло нормально, за исключением легенды. Что мне нужно сделать, это создать легенду, в которой указано, какие строки являются «контейнерами», «грузовыми судами», «балкерами»…. но когда я попытался использовать plt.legend() , он выдал мне значения ‘containers’, ‘freighters’, ‘bulk carriers’ вместо самих меток. Могу ли я получить помощь в том, как отобразить только массив списка вместо значений для легенды?

Для дополнительного пояснения, вот одно из значений списка, специально для контейнеров

 Input: print(containers)

Output:
     month   vessel_type     number_of_vessels  gross_tonnage
0   2019-12   Container               1442      74170.533
8   2020-01   Container               1418      74664.129
16  2020-02   Container               1287      65183.106
24  2020-03   Container               1399      72789.161
32  2020-04   Container               1329      71068.988
40  2020-05   Container               1262      68167.275
48  2020-06   Container               1321      71659.294
56  2020-07   Container               1340      71578.085
  
 categories=[containers,freighters,bulk_carriers,tankers,passengers,barges,tugs,miscellaneous]

for i in categories:
    plt.plot(i['month'],i['gross_tonnage'],label=i)
    plt.xlabel('months')
    plt.ylabel('gross_tonnage')
    plt.title('Changes in gross tonnage over time')
    plt.legend()```

[![Here is the screenshot of what im trying to achieve, pardon the poor drawing][1]][1]


[![this is the screenshot of the disaster][2]][2]


  [1]: https://i.stack.imgur.com/ai30L.png
  [2]: https://i.stack.imgur.com/7knj8.png
  

Комментарии:

1. Что здесь грузовые суда и балкеры? Вы показали здесь только контейнеры, а что находится внутри категорий?

2. это похоже на значения контейнера, только разные числа

3. привет, я решил проблему, заменив список словарем вместо этого