我在 folium 中使用 TimestampedGeoJson 时出错

I have an error using TimestampedGeoJson in folium

我正在尝试使用 Folium 中的 TimestampedGeoJson。但它不起作用。 我的目标是通过在 TYP_LOCATION_MATRIX_FLO 中输入纬度和经度值来可视化路线。 但是,出现以下错误: 我在Whosebug中搜索了很多资料,但我认为它不适合我的情况。需要帮助 TYP_LOCATION_MATRIX_FLO是一个带有纬度值的数组。


对于 geo_df.index 中的 n:

lines = [
{
    'coordinates': [
        [TYP_LOCATION_MATRIX_FLO[0:,0], TYP_LOCATION_MATRIX_FLO[0,0:]],
        [TYP_LOCATION_MATRIX_FLO[1:,0], TYP_LOCATION_MATRIX_FLO[0,1:]],
    ],
    'dates': [
        '2017-06-02T00:00:00',
        '2017-06-02T00:10:00'
    ],
    'color': 'red'
},
]

features = [
    {
        'type': 'Feature',
        'geometry': {
            'type': 'LineString',
            'coordinates': line['coordinates'],
        },
        'properties': {
            'times': line['dates'],
            'style': {
                'color': line['color'],
                'weight': line['weight'] if 'weight' in line else 5
            }
        }
    }
    for line in lines
]

plugins.TimestampedGeoJson({
    'type': 'FeatureCollection',
    'features': features,
}, period='PT1M', add_last_point=True).add_to(map)

TypeError Traceback (most recent call last) in 40 'type': 'FeatureCollection', 41 'features': features, ---> 42 }, period='PT1M', add_last_point=True).add_to(map)

TypeError: Object of type ndarray is not JSON serializable

问题是您试图将 numpy.ndarray 作为输入传递,但如错误消息所示,这是不被接受的。您可以简单地将坐标输入更改为:

'coordinates': [
    [TYP_LOCATION_MATRIX_FLO[0][0], TYP_LOCATION_MATRIX_FLO[0][1]],
    [TYP_LOCATION_MATRIX_FLO[1][0], TYP_LOCATION_MATRIX_FLO[1][1]],
],

这应该可以解决问题,因为您现在传递的是值而不是数组。