| 
 
	积分1045贡献 精华在线时间 小时注册时间2018-1-26最后登录1970-1-1 
 | 
 
| 
本帖最后由 南极的七色鹿 于 2021-12-2 18:53 编辑
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 【问题】将matplotlib与等高线图(coutourf)一起使用时,无法根据自己的需要显示颜色条。
 【目的】
 1、在颜色栏上显示最小值和最大值(假设最大值想设置为1.0,最小值为-2.0),这两个值应该在色条的边缘。
 2、希望颜色条在每个颜色转换处显示值。
 【程序和图片】附件有注意事项、程序、图片
 
 【处理之前的程序】
 import matplotlib.pyplot as plt
 import numpy as np
 plt.style.use('_mpl-gallery-nogrid')
 # make data
 X, Y = np.meshgrid(np.linspace(-3, 3, 256), np.linspace(-3, 3, 256))
 Z = (1 - X/2 + X**5 + Y**3) * np.exp(-X**2 - Y**2)
 # plot
 fig, ax = plt.subplots()
 m = ax.contourf(X, Y, Z,cmap=cmap=plt.cm.YlGnBu)cbar = plt.colorbar(m,shrink=1.0)
 plt.show()
 【处理之后的程序】
 import matplotlib.pyplot as plt
 import numpy as np
 plt.style.use('_mpl-gallery-nogrid')
 # make data
 X, Y = np.meshgrid(np.linspace(-3, 3, 256), np.linspace(-3, 3, 256))
 Z = (1 - X/2 + X**5 + Y**3) * np.exp(-X**2 - Y**2)
 levels = np.linspace(-2.0, 2.0, 9)
 # plot
 fig, ax = plt.subplots()
 m=ax.contourf(X,Y,Z,levels=levels.round(1),cmap=plt.cm.YlGnBu)
 cbar = plt.colorbar(m,shrink=1.0)
 plt.show()
 
 【ps】第一次发帖,记录一下,希望可以帮到uu们~
 
 
 
 
 | 
 |