示例#1
0
fig = plt.figure(figsize=(5.61, 8.92 * .35))
matplotlib.rcParams['font.family'] = 'Arial'
plt.rcParams.update({'font.size': 8})

#%% Load data

mat = sio.loadmat('V:\ipasmans\enstrophy_ana.mat',
                  squeeze_me=True,
                  struct_as_record=False)
mat = mat['model']

for mat1 in mat:
    mat1.t = mat1.t - 366
    mat1.slope.t = mat1.slope.t - 366

ttick = np.arange(2392, 2413.01, 3) + plotter.time2num(
    datetime.datetime(2005, 1, 1))

#%% Figure

ax = fig.add_subplot(1, 1, 1)
#x
ax.set_xlim(ttick[[0, -1]])
ax.xaxis.set_major_locator(ticker.FixedLocator(ttick))
ax.xaxis.set_minor_locator(ticker.MultipleLocator(1))
ax.xaxis.set_major_formatter(
    ticker.FuncFormatter(lambda x, pos: plotter.num2time(x).strftime('%m/%d')))
ax.set_xlabel('2011')
#y
ax.set_ylim(0, 225)
ax.yaxis.set_major_locator(ticker.MultipleLocator(25))
ax.set_ylabel(r'Enstrophy [$\mathrm{m^2 s^{-2}}$]')
示例#2
0
import matplotlib.patches as patch
import numpy as np
import scipy.io as sio
import mod_plotter as plotter
import netCDF4
import scipy.io as sio
from datetime import datetime, timedelta
import imp
from matplotlib import animation
from matplotlib import ticker
import seawater as sw

imp.reload(plotter)

tOut = [datetime(2011, 7, 21, 12, 0, 0), datetime(2011, 8, 13, 12, 0, 0)]
tOut = plotter.time2num(tOut)
tOut = np.arange(tOut[0], tOut[1], 2. / 24.)

#%% Read data

mat = []
mat.append(
    sio.loadmat('V:/ipasmans/plume_modes.mat',
                squeeze_me=True,
                struct_as_record=False))

#Adjust times to Python
for mat1 in mat:
    mat1['t'] = mat1['t'] - 366.
dateRef = datetime(2005, 1, 1).toordinal()
示例#3
0
#%% Load

mat = sio.loadmat('V:/ipasmans/along_glider.mat',
                  squeeze_me=True,
                  struct_as_record=False)

#Time to Python
mat['obs'].t = mat['obs'].t - 366


def dateFormatter(x, pos):
    date = plotter.num2time(x).strftime('%m/%d')
    return date


tLim = plotter.time2num([datetime(2011, 7, 21), datetime(2011, 8, 11)])

#%% Create figure

ax = []
alfabet = ['a)', 'b)', 'c)', 'd)', 'e)']
for iax in np.arange(0, 5):
    ax1 = fig.add_subplot(5, 1, iax + 1)

    #y
    ax1.set_ylim(200, 0)
    ax1.yaxis.set_major_locator(ticker.MultipleLocator(50))
    ax1.yaxis.set_major_formatter(ticker.StrMethodFormatter('{x:.0f}'))
    ax1.set_ylabel('Depth [m]')

    #Text
示例#4
0
import netCDF4
from os import listdir
import re as re
import mod_plotter as plotter
import datetime
import matplotlib.ticker as ticker

plt.close('all')
fig = plt.figure(figsize=(5.61, 8.92 * .25))
matplotlib.rcParams['font.family'] = 'Arial'
plt.rcParams.update({'font.size': 8, 'axes.linewidth': 1})

#%% Times

tList = []
tList.append(plotter.time2num(datetime.datetime(2011, 7, 9)))
tList.append(plotter.time2num(datetime.datetime(2011, 7, 21)))
tList.append(plotter.time2num(datetime.datetime(2011, 8, 8)))
tList.append(plotter.time2num(datetime.datetime(2011, 8, 11)))
tList.append(plotter.time2num(datetime.datetime(2011, 9, 1)))

tTick = np.arange(tList[0], tList[-1] + .001, 3)

#%%

ax = fig.add_subplot(111)

ax.set_xlim(tList[0], tList[-1])
ax.xaxis.set_major_locator(ticker.FixedLocator(np.take(tList, [0, 1, 2, 4])))
ax.xaxis.set_major_formatter(
    ticker.FuncFormatter(lambda x, pos: plotter.num2time(x).strftime('%m/%d')))
示例#5
0
import scipy.io as sio
from datetime import datetime, timedelta
import imp
from matplotlib import animation
from matplotlib import ticker
import seawater as sw
imp.reload(plotter)

#%% Figure

plt.rcParams.update({'font.size': 8})
matplotlib.rcParams['font.family'] = 'Arial'
plt.close('all')
fig = plt.figure(figsize=(5.61, 8.92 * .35))

dateRef = plotter.time2num(datetime(2005, 1, 1))
tLim = np.array([2392, 2413]) + dateRef

ax = []
for iax in np.arange(0, 3):
    ax1 = fig.add_subplot(1, 3, iax + 1)

    #xaxis
    ax1.xaxis.set_major_locator(ticker.MultipleLocator(2))
    ax1.xaxis.set_major_formatter(ticker.StrMethodFormatter('{x:.0f}'))
    ax1.set_xlabel('Longitude')
    ax1.set_xlim(-129, -123.5)

    #yaxis
    ax1.set_ylim(0, 60)
    ax1.yaxis.set_major_locator(ticker.MultipleLocator(5))
示例#6
0
import matplotlib
imp.reload(plotter)

#%% Read data

mat35 = (sio.loadmat('V:/ipasmans/ritz_vectors_exp35.mat',
                     squeeze_me=True,
                     struct_as_record=False))
mat36 = (sio.loadmat('V:/ipasmans/ritz_vectors_exp36.mat',
                     squeeze_me=True,
                     struct_as_record=False))
mat37 = (sio.loadmat('V:/ipasmans/ritz_vectors_exp37.mat',
                     squeeze_me=True,
                     struct_as_record=False))
mat = mat35
t = plotter.time2num(datetime(2011, 7, 24))

plt.close('all')
fig = plt.figure(figsize=(7.4, 8.2))
matplotlib.rcParams['font.family'] = 'Arial'
plt.rcParams.update({'font.size': 8})

#Read grid
grd = plotter.read_grid_rho()

#Obslist
obs = plotter.read_obslist()

#%% Create axes

ax = []
示例#7
0
import numpy as np
import scipy.io as sio
import mod_plotter as plotter
import netCDF4
import scipy.io as sio
from datetime import datetime, timedelta
import imp
from matplotlib import animation
from matplotlib import ticker
import seawater as sw
import matplotlib
imp.reload(plotter)

#%%

t = plotter.time2num(datetime(2011, 8, 8))

plt.close('all')
fig = plt.figure(figsize=(5.61, 8.92 * .65))
matplotlib.rcParams['font.family'] = 'Arial'
plt.rcParams.update({'font.size': 8})

#Obslist
obs = plotter.read_obslist()
#Glider location
tLim1 = 3. * int((t - 2) / 3) + np.array([2., 5.])
obsll = [
    (lon1, lat1, z1)
    for (lon1, lat1, type1, t1,
         z1) in zip(obs['lon'], obs['lat'], obs['type'], obs['t'], obs['z'])
    if type1 == 6 and tLim1[0] <= t1 <= tLim1[1]
示例#8
0
        ax1.yaxis.set_major_formatter(ticker.StrMethodFormatter('{x:.0f}'))
        ax1.xaxis.set_major_locator(ticker.MultipleLocator(2))
        ax1.xaxis.set_major_formatter(ticker.StrMethodFormatter('{x:.0f}'))

        ax.append(ax1)

    return ax


ax = plotAx()

#%% Plot

#
ax1 = ax[0]
t = plotter.time2num(datetime(2011, 7, 21, 12, 0, 0))
it = np.abs(mat['t'] - t) < .1
cplot1 = ax1.contourf(
    mat['lon'],
    mat['lat'],
    np.squeeze(mat['zpot'][1][:, :, it] - mat['zpot'][0][:, :, it]),
    levels=[
        tick1 for tick1 in np.arange(-.1, .101, .01) if np.abs(tick1) > .001
    ],
    cmap=cmap)
cplot2 = ax1.contour(mat['lon'],
                     mat['lat'],
                     np.squeeze(mat['dEpot'][1][:, :, it]),
                     colors='k',
                     linewidths=.7,
                     levels=np.arange(0, 2.01e5, .1e5))