请选择 进入手机版 | 继续访问电脑版
爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 21935|回复: 7

[求助] Python画色斑图和等值线的问题

[复制链接]

新浪微博达人勋

发表于 2016-10-10 11:24:46 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
研究了两天,终于用Python结合matplotlib画出了色斑图和等值线,使用shape进行白化,但是遇到个问题,等值线裁剪后,部分等值线的标注不能显示裁剪后的等值线上,大家都是怎么处理的?



密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-10-10 11:27:10 | 显示全部楼层
补下裁剪前后裁剪后的效果
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-10-10 11:32:27 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-10-10 15:04:59 | 显示全部楼层
你要先画等值线,再标注,再裁剪才行吧。。不知道你裁剪怎么裁的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-10-10 17:10:07 | 显示全部楼层
当未来 发表于 2016-10-10 15:04
你要先画等值线,再标注,再裁剪才行吧。。不知道你裁剪怎么裁的

你有试过吗,画等值,裁剪吗。我的就是先裁剪后,再标注的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-10-11 18:49:04 | 显示全部楼层
有个解决办法,就是生成一个比现在的shape文件范围稍微大一点的shape文件,然后判断mask掉这个shape文件以外的数据,然后再绘制,再用老的shape文件白化
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2020-12-18 12:27:21 | 显示全部楼层
from shapely.geometry import Polygon as ShapelyPolygon
from shapely.geometry import Point as ShapelyPoint
import shapefile
cn =m.contour(olon,olat,data_new,levels=levels,colors="k",linewidths=3)
cn_label=plt.clabel(cn,cn.levels,inline=True,fmt="%.1f",fontsize=20)
        sf = shapefile.Reader(r'files\CHN_adm1.shp') # note, no suffix, all 3 files are used
        recs = sf.records()
        shapes = sf.shapes()
        for i in range(len(recs)):
                if recs[4]=='Fujian':
                        fj_area=ShapelyPolygon(shapes.points)
                        break
        for text_object in cn_label:
                #print (text_object.get_position())
                if not fj_area.contains(ShapelyPoint(text_object.get_position())):
                        text_object.set_visible(False)

############################
把剪裁的地图区域读到polygon 然后判断label的位置是否在地图区域内
如果不是就设置为不可见

密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-12-21 19:48:35 | 显示全部楼层
可以的zsbd
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表