首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >地理图不显示x,y轴python

地理图不显示x,y轴python
EN

Stack Overflow用户
提问于 2021-12-09 08:59:15
回答 2查看 303关注 0票数 0

我试着用地理图来绘制旧金山县的犯罪分布图。问题是,当我使用地理图中的数据集绘制SF的地图时,x,y轴就不会出现。我正在使用这张地图作为我最后的演示文稿,所以我想它对我的观众来说会更容易读,因为他们会看到轴(经度和纬度作为轴)。我已经搜索了尽可能多的文档,并且尝试使用ax.axis('on'),但是没有工作。如有任何建议,我将不胜感激。谢谢(BTW,我在jupyter上做这件事) df是我使用的数据框架,它包含500 K犯罪记录,其中的位置包含经度和纬度。

代码语言:javascript
复制
gdf1 = gpd.GeoDataFrame(df, geometry=gpd.points_from_xy(df.Longitude, df.Latitude))
sf = gpd.read_file(gplt.datasets.get_path("san_francisco"))
count = gdf1
ax = gplt.polyplot(sf, projection=gcrs.AlbersEqualArea(),figsize=(10,10))
gplt.kdeplot(count, cmap="Reds", shade=True, clip=sf, ax=ax, cbar=True)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-12-09 11:16:39

Geoplot构建在cartopy之上,返回的axis对象看起来确实是普通的cartopy GeoAxis对象,因此您应该能够使用该库中可用的任何图形自定义。默认情况下,cartopy绘图不包括轴滴答/滴答标签,因为库经常用于在投影中绘制,其中x和y值不对应于lat/lon。

若要在cartopy中添加网格线,请使用ax.gridlines。这些将正确处理您的投影和绘制lat/lon线作为轮廓在您的地图上。

添加地图网格线和勾标上的文档

代码语言:javascript
复制
ax.gridlines(draw_labels=True, dms=True, x_inline=False, y_inline=False)

有大量的参数用于网格线和定制它们的方法,但希望这将使您开始工作。

票数 0
EN

Stack Overflow用户

发布于 2021-12-09 11:32:38

提供更多几何学的另一种方法是mapbox密度图。如果需要网格,则可以添加其他层。

代码语言:javascript
复制
import requests
import pandas as pd
import plotly.express as px

df = pd.json_normalize(
    requests.get("https://data.sfgov.org/resource/wg3w-h783.json").json()
)

px.density_mapbox(
    df,
    lat="latitude",
    lon="longitude",
    radius=10,
    color_continuous_scale="reds",
    center=dict(
        lat=df["latitude"].astype(float).mean(),
        lon=df["longitude"].astype(float).mean(),
    ),
    zoom=10,
    mapbox_style="carto-positron",
).update_layout(margin={"t":0,"b":0,"l":300,"r":300})

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70287078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档