geopandas 设置shape为透明色

该博客介绍了使用Python和GeoPandas库加载并绘制不同形状文件(.shp),通过颜色图例和zone字典控制区域颜色,展示了如何动态为每个区域赋予特定颜色,以可视化分析结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实很简单

#先导入会用到的库
import geopandas as gpd
import matplotlib.pyplot as plt
import cartopy.io.shapereader as shpreader
# 整两个字典用于控制颜色图例之类的东西
color_dic = {}
zone_new_name_dic = {}
#建个画布
fig, ax = plt.subplots(1,1, figsize=(8, 6))
#然后就画吧

#这是好多个shape文件的路径
zone_folder = os.path.join("I:\IPCC6\Analysis2\\0.6 zone_ssp_trend\\a zone_com_extent")
#循环所有的shp文件
for zone in [x for x in os.listdir(zone_folder) if x.endswith(".shp")]:
    # 把每个shp都画出来
    zone_data = gpd.read_file(os.path.join(zone_folder, zone), encoding='utf-8').to_crs(4326)
    print(color_dic[zone[1:2]])
    ax = zone_data.to_crs(4326).plot(column=var,
                                          linewidth=0,
                                          legend=False,
                                          ax=ax,
                                          facecolor = "none", #这个就是设置pylogon是透明的
                                          edgecolor = "k",    #这个是设置边为黑的
                                          lw = 1,
                                          zorder = 0)
#最后show一下()

#也可以设置pylogon有颜色
#然后就画吧

#这是好多个shape文件的路径
zone_folder = os.path.join("I:\IPCC6\Analysis2\\0.6 zone_ssp_trend\\a zone_com_extent")
#循环所有的shp文件
for zone in [x for x in os.listdir(zone_folder) if x.endswith(".shp")]:
    # 把每个shp都画出来
    zone_data = gpd.read_file(os.path.join(zone_folder, zone), encoding='utf-8').to_crs(4326)
    print(color_dic[zone[1:2]])
    ax = zone_data.to_crs(4326).plot(column=var,
                                          linewidth=0,
                                          legend=False,
                                          ax=ax,
                                          color = color_dic[str(zone[1:2])],  #这就有颜色了
                                          edgecolor = "k",    #这个是设置边为黑的
                                          lw = 1,
                                          zorder = 0)
#最后show一下()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值