pcolormesh具有用户定义的值级别

时间:2015-12-09 08:39:25

标签: python python-2.7 numpy matplotlib matplotlib-basemap

当我使用plt.pcolormesh(xx,cmap = xx)时,我无法设置绘图的最小值。
例如,我绘制了一个二维数组数据,显示了某些区域的人口密度 http://i5.tietuku.com/89f39b85454eb277.png

如果我想显示超过某个值的人口密度(如4500人/平方米), 我可以使用plt.contourf(pop,levels = [4500,6000,xxxx,xxxxx])来解决这个问题。

例如:
http://i12.tietuku.com/2b5be9a6888c7c40.png

但我想使用pcolormesh风格,我想过两个方法:

    1. 将colormap设置为以“white”开头。
    1. 设置用户定义的级别,如contourf plot。

我找不到一些有用的有用指南 熟悉这方面的人可以提供一些帮助吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

对我来说最明显的两个选择是:(1)将数据转换为蒙版数组,并使用colormap的set_bad()方法设置颜色,或者(2)使用vmin参数{ {1}}并使用色彩映射的pcolormesh()方法设置颜色。

这是一个使用Numpy数组set_under()中的一些数据的示例,它们的值介于0和57之间。我已经屏蔽了小于25的值,并将绘图颜色设置为黑色,因为它是更容易看到效果。

xx

enter image description here