def param_rdb_download(request): form = DataParamForm(request.GET) if form.is_valid(): _logger.info( "requested data download for %s with params %s" % (form.cleaned_data["site_list"], form.cleaned_data["params"]) ) beginDate = form.cleaned_data["timeseries_start"] endDate = form.cleaned_data["timeseries_end"] gage = form.cleaned_data["site_list"] p = form.cleaned_data["params"][0] station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() # fifth parameter to create_metadata_header is list of Station objects station_list = stage_queries.station_list([gage]) query_metadata_list = create_metadata_header( GENERAL_MESSAGE, EDEN_CONTACT, END_OF_HEADER, form.cleaned_data, station_list, water_level=False ) response = HttpResponse(content_type="text/csv") stage_data.write_rdb(data_seq, response, metadata=query_metadata_list) return response else: return HttpResponseBadRequest(",".join(form.errors))
def _plot_simple(gage, p, beginDate=None, endDate=None, format='png', show_logo=True): station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() if show_logo: title = pt.title() else: title = None if not format in _mime_types: return HttpResponseBadRequest("Unknown image format: " + format) response = HttpResponse(content_type=_mime_types[format]) hydrograph.png_simple(data_seq, response, beginDate=beginDate, endDate=endDate, format=format, show_logo=show_logo, title=title, y_label=pt.label_y()) return response
def param_data_download(request): form = DataParamForm(request.GET) if form.is_valid(): _logger.info("requested plot data for %s with params %s" % (form.cleaned_data['site_list'], form.cleaned_data['params'])) beginDate = form.cleaned_data["timeseries_start"] endDate = form.cleaned_data["timeseries_end"] gage = form.cleaned_data['site_list'] p = form.cleaned_data['params'][0] station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() response = HttpResponse(content_type='text/csv') stage_data.write_csv(data_seq, response) return response else: return HttpResponseBadRequest(",".join(form.errors))
def _plot_simple(gage, p, beginDate=None, endDate=None, format="png", show_logo=True): station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() if show_logo: title = pt.title() if not format in _mime_types: return HttpResponseBadRequest("Unknown image format: " + format) response = HttpResponse(content_type=_mime_types[format]) hydrograph.png_simple( data_seq, response, beginDate=beginDate, endDate=endDate, format=format, show_logo=show_logo, title=title, y_label=pt.label_y(), ) return response
def param_data_download(request): form = DataParamForm(request.GET) if form.is_valid(): _logger.info( "requested plot data for %s with params %s" % (form.cleaned_data["site_list"], form.cleaned_data["params"]) ) beginDate = form.cleaned_data["timeseries_start"] endDate = form.cleaned_data["timeseries_end"] gage = form.cleaned_data["site_list"] p = form.cleaned_data["params"][0] station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() response = HttpResponse(content_type="text/csv") stage_data.write_csv(data_seq, response) return response else: return HttpResponseBadRequest(",".join(form.errors))
def param_rdb_download(request): form = DataParamForm(request.GET) if form.is_valid(): _logger.info("requested data download for %s with params %s" % (form.cleaned_data['site_list'], form.cleaned_data['params'])) beginDate = form.cleaned_data["timeseries_start"] endDate = form.cleaned_data["timeseries_end"] gage = form.cleaned_data['site_list'] p = form.cleaned_data['params'][0] station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() # fifth parameter to create_metadata_header is list of Station objects station_list = stage_queries.station_list([gage]) query_metadata_list = create_metadata_header(GENERAL_MESSAGE, EDEN_CONTACT, END_OF_HEADER, form.cleaned_data, station_list, water_level=False) response = HttpResponse(content_type='text/csv') stage_data.write_rdb(data_seq, response, metadata=query_metadata_list) return response else: return HttpResponseBadRequest(",".join(form.errors))
data, ss = stage_queries.data_for_plot_hourly(['CV5NR'], beginDate="2006-10-15", endDate="2006-11-12") station = ss[0] ct = png_single_station(data, "/tmp/hg6b.png", station, beginDate=dateutil.parser.parse("2006-10-15"), endDate=dateutil.parser.parse("2006-11-12"), show_logo=False) print "hg6b.png", ct gage = "EDEN_3" p = "rainfall" beginDate = datetime.date(2013, 01, 01) endDate = datetime.date(2013, 3, 1) station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() show_logo = True # Let logo also drive title display if show_logo: title = pt.title() png_simple(data_seq, "/tmp/hg7.png", beginDate=beginDate, endDate=endDate, show_logo=show_logo, title=title, y_label=pt.label_y()) print "hg7.png" data_seq = pt.sequence() png_simple(data_seq, "/tmp/hg7.svg", format="svg", beginDate=beginDate, endDate=endDate, show_logo=show_logo, title=title, y_label=pt.label_y()) print "hg7.svg"
ct = png_single_station(data, "/tmp/hg6b.png", station, beginDate=dateutil.parser.parse("2006-10-15"), endDate=dateutil.parser.parse("2006-11-12"), show_logo=False) print "hg6b.png", ct gage = "EDEN_3" p = "rainfall" beginDate = datetime.date(2013, 01, 01) endDate = datetime.date(2013, 3, 1) station_list = stage_queries.station_list([gage]) pt = Plottable(station_list[0], p, beginDate, endDate) data_seq = pt.sequence() show_logo = True # Let logo also drive title display if show_logo: title = pt.title() png_simple(data_seq, "/tmp/hg7.png", beginDate=beginDate, endDate=endDate, show_logo=show_logo, title=title, y_label=pt.label_y()) print "hg7.png"
def test_no_data_pos(self): pt = Plottable("EDEN_3", "salinity", "2012-03-01", "2012-04-01") for t in pt.sequence(): self.assertEquals(2, len(t))
def test_no_data_neg(self): with self.assertRaises(NoData): pt = Plottable("2A300", "temperature") for t in pt.sequence(): print t