爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 162|回复: 8

[求助] python 卫星数据pcolormesh绘图

[复制链接]

新浪微博达人勋

发表于 4 天前 | 显示全部楼层 |阅读模式

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

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

x
求问各位大佬,用风云数据时,利用pcolormesh绘图时色标的数字始终不在色标颜色的分界处(如图),但是如果我用contourf就没有这个问题,请问有大佬知道怎么解决吗?我的代码很简单,数据处理过程就不写了:cp=plt.pcolormesh(lon,lat,values,vmin=200,vmax=280,cmap=cmaps.precip2_17lev_r,transform=ccrs.PlateCarree(),zorder=0)

绘制的云图

绘制的云图
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 4 天前 | 显示全部楼层
本帖最后由 edwardli 于 2024-12-18 21:15 编辑

from matplotlib import cm
import matplotlib.colors as colors
from matplotlib.colors import ListedColormap, LinearSegmentedColormap
mycmap = cm.get_cmap('jet_r', 16)



norm = colors.BoundaryNorm(np.arange(200,280,5), mycmap.N) #基于离散区间生成颜色映射索引


fig =plt.figure(figsize=(9,6),dpi=100)
ax = plt.subplot(111,projection=ccrs.PlateCarree())
cp = plt.pcolormesh(column.lon,line.lat,dn_values,#vmin=200,vmax=280,
                    cmap=mycmap,norm=norm,transform=ccrs.PlateCarree())

cs = plt.contour(column.lon,line.lat,dn_values,levels=[221,241])
plt.colorbar(cp)
plt.clabel(cs)
ax.coastlines()
ax.set_extent([100,120,35,55])
plt.show()
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 4 天前 来自手机 | 显示全部楼层
原因contourf 范围(],而pcolormesh范围[)
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 3 天前 | 显示全部楼层
edwardli 发表于 2024-12-18 21:35
原因contourf 范围(],而pcolormesh范围[)

好的  谢谢li老师
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 3 天前 | 显示全部楼层
fig, ax = plt.subplots(figsize=(15, 12), subplot_kw={'projection': platecarree})
pm = ax.pcolormesh(...)
cb = fig.colorbar(pm, ax=ax)
# 用下面的ticks参数可以手动设置你想要的色标刻度位置
cb.set_ticks(ticks=[...])
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 3 天前 | 显示全部楼层
墨家大宝 发表于 2024-12-19 09:21
fig, ax = plt.subplots(figsize=(15, 12), subplot_kw={'projection': platecarree})
pm = ax.pcolormesh ...

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

使用道具 举报

新浪微博达人勋

发表于 3 天前 来自手机 | 显示全部楼层
【雷小Py-018:色标colorbar也在坐标系ax中_2024.11.02-哔哩哔哩】 https://b23.tv/nIpLV7l
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 3 天前 | 显示全部楼层
因为你用的 cmaps 里的这个 colormap 颜色数量太少了,采样出来就是会不太连续
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 前天 08:25 | 显示全部楼层
灭火器 发表于 2024-12-19 12:44
因为你用的 cmaps 里的这个 colormap 颜色数量太少了,采样出来就是会不太连续

好的  谢谢  我改个试试
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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