def timeseries(inputs, period=None, extent=None, **kwds): ''' Inputs is a variable or group of variables If extent is larger than a single cell, variables will be aggregated using their default method ''' inputs = _sanitize_inputs(inputs) if period is None: period = inputs.source.period else: period = _sanitize_period(period, inputs.source.period.freq) if extent is None: extent = inputs.source.extent vg_dict = _dd() for v in inputs: data = _spatial_aggregate(v, period, extent) vg_dict.add_item( _od(period=period, _data=data, units=v.units, extent=extent, method='mean', variable=v.name, source=v.source)) layout = _layout.SpatialAggregateLayout(**kwds) gridview = layout.generate_view(vg_dict) gridview.draw() return gridview
def _plot_spatial_multi(var_group, period, extent=None, **kwds): if not extent: extent = var_group.source.extent vg_dict = _dd() for v in var_group: aggregator = _sanitize_aggregate_method(v) data = aggregator(v, period, extent) vg_dict.add_query_item([ROW_FIELD, COLUMN_FIELD], _od(period=period, _data=data, units=v.units, extent=extent, variable=v.name, source=v.source)) layout = _layout.DefaultSpatialGridLayout(ROW_FIELD, COLUMN_FIELD, **kwds) gridview = layout.generate_view(vg_dict) gridview.draw() return gridview