我试图在使用maskoceans时识别被遮罩像素的索引,这样我就可以只调用我目前正在全球范围内的代码中的陆地像素,即使我不关心海洋像素.我尝试了不同的方法,并注意到我的情节看起来很奇怪.最后,我意识到在我的纬度/经度指数中出现了混乱,尽管我实际上并没有碰到它们!这是代码:
import numpy as np
import netCDF4
from datetime import datetime, timedelta
import matplotlib
import matplotlib.pyplot as plt
from matplotlib.ticker import MaxNLocator
import matplotlib.dates as mpldates
import heat_transfer_coeffs
from dew_interface import get_dew
from matplotlib.dates import date2num, num2date
import numpy as np
import netCDF4
import heat_transfer_coeffs as htc
from jug.task import TaskGenerator
import matplotlib.cm as cm
import mpl_toolkits
from mpl_toolkits import basemap
from mpl_toolkits.basemap import Basemap, maskoceans
np.seterr(all='raise')
# set global vars
ifile = netCDF4.Dataset('/Users/myfile.nc', 'r')
times = ifile.variables['time'][:].astype(np.float64) # hours …Run Code Online (Sandbox Code Playgroud) python latitude-longitude netcdf python-2.7 matplotlib-basemap
我想在绘制 netCDF 数据集中的数据时掩盖海洋。我遵循了这个问题的答案中给出的重要指示。它对半个世界都有效,但不知何故,格林威治以西的一切也都被遮盖了,无论是海洋还是陆地。这是我的代码:
import netCDF4
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import mpl_toolkits
from mpl_toolkits import basemap
from mpl_toolkits.basemap import Basemap, maskoceans
filename = 'myfile.nc'
vmin = 0.
vmax = 1
nc = netCDF4.Dataset(filename, 'r')
data = nc.variables['sum'][:]
lats_1d = nc.variables['lat'][:]
lons_1d = nc.variables['lon'][:]
lons, lats = np.meshgrid(lons_1d, lats_1d)
labels = ['DJF', 'MAM', 'JJA', 'SON']
cmap = cm.RdYlBu
cmap.set_over('#00FF00')
my_dpi = 96
fig = plt.figure(figsize=(1200/my_dpi, 800./my_dpi))
for season …Run Code Online (Sandbox Code Playgroud) 我正在尝试运行其他人编写的模型.运行make文件时,我收到有关其中一个功能的以下错误:
ground_layer.c:4391:6: error: conflicting types for 'func_'
real func_(R_fp funk, real *x)
^
ground_layer.c:4360:17: note: previous declaration is here
extern real func_(U_fp, real *);
Run Code Online (Sandbox Code Playgroud)
我觉得这肯定是一个愚蠢的错误,我的C在这一点上真的生锈了,我只是无法识别错误.我已经尝试删除所有的差异:x在第一个定义中添加一个删除funk,但这些更改似乎只会让事情变得更糟.
有关信息,我在MacOSX 10.11上.这是从定义到结束的代码:
/* Local variables */
static real a, b;
static integer j;
static real x;
static integer it;
static real del, tnm, sum, ddel;
extern real func_(U_fp, real *);
/* ********************************************************************** */
b = exp(-(*aa));
a = 0.f;
if (*n == 1) {
r__1 = (a + b) * .5f; …Run Code Online (Sandbox Code Playgroud)