Геопанды: как построить геометрию шестиугольника?

#python #geopandas

#python #геопанды

Вопрос:

У меня есть фрейм данных geopandas с геометрией шестиугольника и меткой, и мне трудно понять, как:

  1. постройте шестиугольники с моей собственной цветовой схемой
  2. показать легенду

фрагмент данных выглядит следующим образом:

     geometry    pred_labels color
0   POLYGON ((63.06967 29.61571, 63.07798 29.60487...   1   0.000000
1   POLYGON ((63.18163 29.99343, 63.18998 29.98255...   3   0.666667
2   POLYGON ((62.99624 29.69126, 63.00458 29.68042...   1   0.000000
3   POLYGON ((63.32191 29.58779, 63.33018 29.57693...   1   0.000000
4   POLYGON ((63.64046 29.59359, 63.64869 29.58271...   1   0.000000

10509 rows × 3 columns
 

когда я строю:

 df_january.plot(cmap='Purples', legend=True);
 

рис

Я получаю то, что кажется правильным, но если я укажу столбец на pred_labels или color, я получу очень шаткие и запутанные графики. Например:

 df_january.plot(column='pred_labels', cmap='Purples', legend=True);
 

введите описание изображения здесь

Увеличено больше:

введите описание изображения здесь

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

1. Шестиугольная геометрия? Ни на одном изображении нет ничего шестиугольного. Также вы уверены, что используете geopandas: обычно он отображает поле геометрии в крайнем правом конце таблицы, а не в первом.

2. Переориентация фрейма данных таким образом, чтобы столбец геометрии был последним, казалось, помогла!

3. С geopandas стоит обязательно использовать set_geometry метод, чтобы убедиться, что он знает, в каком поле содержится геометрия. В противном случае, похоже, предполагается, что он находится в последнем столбце.

Ответ №1:

Следуя Дж. Уоррену, размещение столбца геометрии в конце df улучшило построение графика.

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

1. Можете ли вы объяснить (с точки зрения кода), что вы сделали, чтобы устранить проблему? Порядок столбцов не должен влиять на построение графиков в геопандах.

2. df_january = df[(df.time_index == 1)].reset_index(drop=True) df_january = df_january[['pred_labels', 'geometry']] Порядок, похоже, действительно имел значение.