【问题标题】:Can python/matplotlib's confourf be made to plot a limited region of data?可以使用 python/matplotlib 的 confourf 绘制有限的数据区域吗?
【发布时间】:2012-12-11 04:41:44
【问题描述】:

我正在尝试使用 matplotlib 的 contourf 制作等高线图。有没有办法放大我的数据的特定区域而其余部分不绘制?例如,也许我的水平范围从 -1 到 101,但我只想绘制介于 0 和 100 之间的数据,并且我希望将绘图的边界绘制在 0左边是100,右边是100。我认为“extent”关键字可以完成这项工作,但是在给出 X 和 Y 数据时它是不活动的。我知道我可以以各种方式掩盖无关数据,但这会使绘图的边界超出我的兴趣区域,这不是我想要的。我想我也可以过滤或插入我的数据到我感兴趣的区域,然后将过滤后的数据提供给轮廓,但如果我可以让轮廓专注于特定区域,那会容易得多。谢谢。

【问题讨论】:

    标签: python matplotlib contour


    【解决方案1】:

    也许你正在寻找plt.xlim

    import matplotlib.pyplot as plt
    import numpy as np
    x = np.linspace(-1,101,100)
    y = np.linspace(-1,101,100)
    x, y = np.meshgrid(x, y)
    z = x*x+y*y
    plt.figure()
    plt.xlim(0, 50)
    plt.contourf(x, y, z)
    plt.show()
    

    上面,plt.xlim(0, 50) 被用来代替plt.xlim(0,100) 只是为了强调变化。如果没有plt.xlim(0, 50),情节如下所示:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-27
      • 2013-09-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 2020-07-28
      • 1970-01-01
      相关资源
      最近更新 更多