def test_remove_repeat_coordinates(test_coords): r"""Test remove repeat coordinates function.""" x, y = test_coords x[0] = 8.523 x[-1] = 8.523 y[0] = 24.123 y[-1] = 24.123 z = np.array(list(range(-10, 10, 2))) x_, y_, z_ = remove_repeat_coordinates(x, y, z) truthx = np.array([8.523, 67, 79, 10, 52, 53, 98, 34, 15]) truthy = np.array([24.123, 87, 48, 94, 98, 66, 14, 24, 60]) truthz = np.array([-10, -8, -6, -4, -2, 0, 2, 4, 6]) assert_array_almost_equal(truthx, x_) assert_array_almost_equal(truthy, y_) assert_array_almost_equal(truthz, z_)
return None return lon, lat, value from_proj = ccrs.Geodetic() to_proj = ccrs.AlbersEqualArea(central_longitude=-97.0000, central_latitude=38.0000) levels = list(range(-20, 20, 1)) cmap = plt.get_cmap('magma') norm = BoundaryNorm(levels, ncolors=cmap.N, clip=True) x, y, temp = station_test_data('air_temperature', from_proj, to_proj) x, y, temp = remove_nan_observations(x, y, temp) x, y, temp = remove_repeat_coordinates(x, y, temp) ########################################### # Scipy.interpolate linear # ------------------------ gx, gy, img = interpolate(x, y, temp, interp_type='linear', hres=75000) img = np.ma.masked_where(np.isnan(img), img) view = basic_map(to_proj) mmb = view.pcolormesh(gx, gy, img, cmap=cmap, norm=norm) plt.colorbar(mmb, shrink=.4, pad=0, boundaries=levels) ########################################### # Natural neighbor interpolation (MetPy implementation) # ----------------------------------------------------- # `Reference <https://github.com/Unidata/MetPy/files/138653/cwp-657.pdf>`_ gx, gy, img = interpolate(x, y, temp, interp_type='natural_neighbor', hres=75000)