在这个问题R - plotly - combine bubble and chorpleth map的答案中,很好地描述了如何在一个地图中将气泡和等值线图组合在一起。我想在Python中复制完全相同的示例,但是我没有基于plotly文档(https://plot.ly/python/reference/)中提供的信息进行管理。
等效的R代码如下:
lon = c(-73.9865812, -118.2427266, -87.6244212, -95.3676974)
pop = c(8287238, 3826423, 2705627, 2129784)
df_cities = data.frame(cities, lat, lon, pop)
state_codes = c("NY", "CA", "IL", "TX")
pop = c(19746227.0, 38802500.0, 12880580.0, 26956958.0)
df_states = data.frame(state_codes, pop)
plot_ly(df_cities, lon=lon, lat=lat,
text=paste0(df_cities$cities,'<br>Population: ', df_cities$pop),
marker= list(size = sqrt(pop/10000) + 1), type="scattergeo",
filename="stackoverflow/choropleth+scattergeo") %>%
add_trace(z=df_states$pop,
locations=df_states$state_codes,
text=paste0(df_states$state_codes, '<br>Population: ', df_states$pop),
type="choropleth",
colors = 'Purples',
locationmode="USA-states") %>%
layout(geo = list(scope="usa"))
如何在Python中实现?
答案 0 :(得分:0)
我发现我必须稍微调整代码以使其工作:
cities = c('New York', 'Los Angeles', 'Chicago', 'Houston')
lat = c(40.7305991, 34.053717, 41.8755546, 29.7589382)
lon = c(-73.9865812, -118.2427266, -87.6244212, -95.3676974)
pop = c(8287238, 3826423, 2705627, 2129784)
df_cities = data.frame(cities, lat, lon, pop)
state_codes = c("NY", "CA", "IL", "TX")
pop = c(19746227.0, 38802500.0, 12880580.0, 26956958.0)
df_states = data.frame(state_codes, pop)
plot_ly(df_cities, lon=lon, lat=lat,
text = paste0(df_cities$cities,'<br>Population: ', df_cities$pop),
marker = list(size = sqrt(pop/10000) + 1), type="scattergeo",
filename = "stackoverflow/choropleth+scattergeo") %>%
add_trace(z=df_states$pop,
locations = df_states$state_codes,
text = paste0(df_states$state_codes, '<br>Population: ', df_states$pop),
type = "choropleth",
colors = 'Purples',
locationmode = "USA-states") %>%
layout(geo = list(scope="usa"))