我已经尝试将我的代码放入Jupyter notebook和Google Colab中,但一旦我处理了代码中的所有错误,我就不仅仅是在输出中得到一个空白屏幕。当我在将热图数据集放在地图上之前运行代码时,它是有效的。我使用https://alysivji.github.io/getting-started-with-folium.html来组织我的代码。下面是数据集的链接:https://data.cityofnewyork.us/Public-Safety/NYPD-Arrest-Data-Year-to-Date-/uip8-fykc
我的完整代码如下。
here is what it looks like right now
import pandas as pd
pd.plotting.register_matplotlib_converters()
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns
import numpy as np
import folium
from folium import features
from folium import plugins
from folium.plugins import HeatMap
from folium.plugins import MarkerCluster
print("Setup Complete")
crime_filepath = "arrestdata.csv"
crime_data = pd.read_csv (crime_filepath, index_col = "ARREST_DATE")
crime_data.head()
#this is the section that doesn't work
m = folium.Map([40.7128, -74.0060], zoom_start=10.3)
m #this and the line above properly creats a blank map
for index, row in crime_data.iterrows():
folium.CircleMarker([row['Latitude'],row['Longitude']],
radius=15,
fill_color="#3db7e4",).add_to(m)
my_map = crime_data[['Latitude', 'Longitude']].values
m.add_child(plugins.HeatMap(my_map, radius=15))
m发布于 2019-12-16 19:57:36
我已经在你的链接中下载了数据集,并设法获得了热图和markercluster。然而,在这种情况下,我只取了数据的一个子集,只是为了检查代码的工作情况,因为它的大小很大。弹出的是数据帧中的ARREST_PRECINCT。我提供了两种方法来创建热图,因为您正在使用这两种方法。
import pandas as pd
import folium
from folium import plugins
from folium.plugins import HeatMap
from folium.plugins import MarkerCluster
nypd_data = pd.re ad_csv('NYPD_Arrest_Data__Year_to_Date_.csv')
nypd_robbery = nypd_data.loc[nypd_data['OFNS_DESC']=='ROBBERY']
my_heatmap = folium.Map(location=[40.695792, -73.939096], zoom_start=8)
heat_data = [[row['Latitude'],row['Longitude']] for index, row in nypd_robbery.iterrows()]
# Plot it on the map
HeatMap(heat_data).add_to(my_heatmap)
# Display the map
my_heatmap
#or
my_map = folium.Map(location=[40.695792, -73.939096], zoom_start=8)
robbery_loc = nypd_robbery[['Latitude', 'Longitude']].values
# plot heatmap
my_map.add_child(plugins.HeatMap(robbery_loc, radius=15))
my_map
#MarkerCluster
map_rob = folium.Map(location=[40.695792, -73.939096], zoom_start=10, tiles='Stamen Terrain')
marker_cluster = folium.plugins.MarkerCluster().add_to(map_rob)
for index,row in nypd_robbery.iterrows():
lat = row["Latitude"]
lon = row["Longitude"]
name = row["ARREST_PRECINCT"]
folium.Marker([lat,lon],popup=name).add_to(marker_cluster)
map_rob在此处输入代码

https://stackoverflow.com/questions/59296934
复制相似问题