通过 Folium / Pandas 中的循环创建折线

问题描述 投票:0回答:1

我尝试在循环时从 JupyterLab 中的数据帧创建多行。我创建了以下代码,但每次尝试运行它时,我的 Jupyter Notebook 都会崩溃并告诉我内核已死亡。我在这里缺少什么?

m = folium.Map(location=[VstBreitengrad, VstLängengrad], max_zoom=20, zoom_start=5)

for index, row in dfFilter.iterrows():

    Breitengrad = row["Breitengrad_x"]
    Längengrad = row["Längengrad_x"]

    coordinates = [
                [Breitengrad, Längengrad],
                [20, 20]
    ]
               
    folium.PolyLine(
            locations=coordinates,
            color="#FF0000",
            weight=5,
    ).add_to(m)

m

Breitengrad_x 和 Längengrad_x 是数据框中的列,我将从中获取坐标。如果我对坐标进行硬编码,例如

Breitengrad = 50 #row["Breitengrad_x"]
Längengrad = 20 #row["Längengrad_x"]

代码运行没有问题。非常感谢您的想法/解决方案。

python pandas folium
1个回答
0
投票

假设

Breitengrad_x
的 dtype 是
int64
row["Breitengrad_x"]
将为您提供
numpy.int64
类型的值。这可能是导致问题的原因,因为您的代码使用硬编码值运行。

Tox 修复它,尝试将值转换为常规值

int
:

    ...
    Breitengrad = int(row["Breitengrad_x"])
    Längengrad = int(row["Längengrad_x"])
    ...
© www.soinside.com 2019 - 2024. All rights reserved.