爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 12528|回复: 6

[求助] python设置colorbar刻度和样式的问题

[复制链接]

新浪微博达人勋

发表于 2020-7-27 22:20:57 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 lynpatty 于 2020-7-28 16:42 编辑

最近在做图,一直想做箭头样式的python也没有成功,仿照了家园上的几个模式都不行,最后只能做出这样的。。。想问一下大家要怎么修改代码呢?以及如何修改colorbar的刻度,让他固定成比如0,0.2,0.4,0.6,0.8这样。。。试过了set_clim也一直在报错,只好求助于各位大神看看

cf = ax.contourf(lon,lat,md_values_plot,levels =19)
cbar=plt.colorbar(cf,ax=ax,orientation='horizontal',extend="both",extendrect=False,pad=0.15,shrink=0.5)

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

新浪微博达人勋

发表于 2020-7-28 08:40:59 | 显示全部楼层
只看图就能倒推出代码问题的,绝对是大神
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-7-28 10:19:29 | 显示全部楼层
cb.ax.set_ticks([0.0,0.2,0.4,0.8,1.0])这样行不行
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-7-28 12:18:51 | 显示全部楼层
本帖最后由 Masterpiece 于 2020-7-28 17:13 编辑

我讲明白了么?extend是要设置在contourf里边的,而不是colorbar!

cb.png
  1. import numpy as np
  2. import matplotlib.pyplot as plt

  3. N = 37
  4. x, y = np.mgrid[:N, :N]
  5. Z = (np.cos(x*0.2) + np.sin(y*0.3))

  6. fig, axl = plt.subplots(2,2,figsize=(12,9))
  7. extend=['neither','min','max','both']
  8. count=0
  9. for i in range(2):
  10.     for j in range(2):
  11.         ax=axl[i,j]
  12.         cf=ax.contourf(x,y,Z,cmap='jet',levels=np.arange(-1.9,2.0,0.1),extend=extend[count])
  13.         cb = plt.colorbar(cf, ax=ax, shrink=0.8, orientation='vertical')
  14.         cb.ax.tick_params(labelsize=12, direction='out', pad=1, labelcolor='k')
  15.         if i==1 & j==1:
  16.             ax.set_title('extend=%s\nChange ticks=np.arange(-2,2.5,0.5)'%extend[count], fontdict={'size': 14, 'color': 'b'})
  17.             cb.set_ticks(np.arange(-2, 2.5, 0.5))

  18.         else:
  19.             ax.set_title('extend=%s'%extend[count], fontdict={'size': 14, 'color': 'b'})
  20.         count+=1

  21. plt.subplots_adjust(wspace=0.2,hspace=0.3)
  22. plt.show()
复制代码





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

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-7-28 16:34:09 | 显示全部楼层
笺疏 发表于 2020-7-28 10:19
cb.ax.set_ticks([0.0,0.2,0.4,0.8,1.0])这样行不行

我试过了也不行
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-7-28 16:38:07 | 显示全部楼层
MyOpenGFM 发表于 2020-7-28 08:40
只看图就能倒推出代码问题的,绝对是大神

啊哈哈对不起我发现代码页没有上传成功
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-8-1 10:17:23 | 显示全部楼层
Masterpiece 发表于 2020-7-28 12:18
我讲明白了么?extend是要设置在contourf里边的,而不是colorbar!

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

使用道具 举报

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

本版积分规则

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

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

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