Графики в Python с использованием данных из .csv и двух столбцов индекса - PullRequest
0 голосов
/ 25 апреля 2019

У меня есть данные о

различных состояниях состояния за 11 лет в CSV.Я загрузил его в python, используя «State» и «Year» в качестве index_col.Я пытаюсь создать графики для каждого штата, где ось X является годом, а ось Y является одной из моих характеристик (т. Е. Доход или ВВП).В идеале я мог бы создать вторую ось y с цветовой шкалой в будущем.

               Year    GDP      EDU      CI    UR    IPC
State                                                   
Alabama        2003  36.64  1068.61   87.90   7.8  26693
Alabama        2004  38.74  1139.86   88.98   7.5  28399
Alabama        2005  39.69  1247.12   92.75   6.9  29808
Alabama        2006  39.92  1349.12   96.96   6.6  31306
Alabama        2007  39.78  1462.16   99.34   6.4  32573
Alabama        2008  39.27  1416.61   99.94   6.7  33377
Alabama        2009  37.42  1401.98   90.88   7.7  32631
Alabama        2010  38.09  1377.70   85.70   7.9  33844
Alabama        2011  38.56  1330.85   90.46   7.6  34942
Alabama        2012  38.69  1356.51   96.80   7.1  35818
Alabama        2013  38.95  1395.90  100.13   7.0  36067
Alabama        2014  38.48  1405.57  102.45   6.9  37235

(извините, это выглядит ужасно. По существу столбцы (состояние / год / GDP / EDU / CI / UR /IPC) Данные выглядят так, и у меня они есть для каждого состояния. В идеале, я бы смог построить график каждого состояния с определенными характеристиками. Кроме того, сравнивая одно состояние с другим на одном графике, поэтому я хотел бы иметь возможность вызывать вселет для двух выбранных штатов, а затем выберите столбцы данных, которые я могу построить. Ни одно из графических предложений, которые я видел в Интернете, не охватывало бы это. Буду признателен за любую помощь!

Я пытался сделать, чтобы pltГрафики. Я создал документы Excel для каждого штата, содержащие их соответствующие данные, но не могу назвать его по годам по оси X. Обычно это ключевая ошибка, которая говорит, что «Год» не существует.Предполагая, что это связано с тем, что это столбец индекса?

for State in State_index:
    index_for_State = df.index.get_level_values("State") == State
    data_for_State = df[index_for_State]
    df = data_for_State
    try:
        xname = "IPC"
        yname = "EDU"
        fig, ax = plt.subplots(figsize = (15, 8))
        scatter = ax.scatter(x=df[xname],
                    y=df[yname],
                    c = df.index.get_level_values("Year"))
...