예제 #1
0
def plot_data_daily(request):
    form = TimeSeriesFilterForm(request.GET)

    if form.is_valid():
        gages = form.cleaned_data["site_list"]
        _logger.info("plot_data, gages is %s" % (gages))

        station_dict = stage_queries.station_dict(gages)

        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        q, dt = stage_queries.daily_query_split(*station_dict.values())
        if beginDate:
            q = q.where(dt >= beginDate)
        if endDate:
            q = q.where(dt <= endDate)
        data = q.execute()

        response = HttpResponse(content_type="text/csv")
        if len(gages) == 1:
            site_name = "%s_NGVD29" % gages[0]
        else:
            site_name = None
        # stage_data.write_csv(results=data, outfile=response, station_name=site_name)
        stage_data.write_csv_for_plot(results=data, outfile=response, column_name=site_name)
        return response
    else:
        return HttpResponseBadRequest(",".join(form.errors))
예제 #2
0
def plot_data_daily(request):
    form = TimeSeriesFilterForm(request.GET)

    if form.is_valid():
        gages = form.cleaned_data['site_list']
        _logger.info("plot_data, gages is %s" % (gages))

        station_dict = stage_queries.station_dict(gages)

        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        q, dt = stage_queries.daily_query_split(*station_dict.values())
        if beginDate:
            q = q.where(dt >= beginDate)
        if endDate:
            q = q.where(dt <= endDate)
        data = q.execute()

        response = HttpResponse(content_type='text/csv')
        if len(gages) == 1:
            site_name = '%s_NGVD29' % gages[0]
        else:
            site_name = None
        # stage_data.write_csv(results=data, outfile=response, station_name=site_name)
        stage_data.write_csv_for_plot(results=data, outfile=response, column_name=site_name)
        return response
    else:
        return HttpResponseBadRequest(",".join(form.errors))
    def test_daily_split(self):

        q, dt = station_data.daily_query_split(*stations)
        q = q.where(dt >= '2008-09-20')
        rs = q.execute()
        rsk = rs.keys()
        for s in stations:
            web_name = s.station_name_web
            for suffix in [" avg", " est", " dry"]:
                self.assertIn(web_name + suffix, rsk, "expected rs to have key " + web_name + suffix)
        for r in rs:
            self.assertTrue(r, "valid result row")
예제 #4
0
    def test_daily_split(self):

        q, dt = station_data.daily_query_split(*stations)
        q = q.where(dt >= '2008-09-20')
        rs = q.execute()
        rsk = rs.keys()
        for s in stations:
            web_name = s.station_name_web
            for suffix in [" avg", " est", " dry"]:
                self.assertIn(web_name + suffix, rsk,
                              "expected rs to have key " + web_name + suffix)
        for r in rs:
            self.assertTrue(r, "valid result row")
예제 #5
0
def _daily_plot_data(form):
    gages = form.cleaned_data["site_list"]
    _logger.info("plot_data, gages is %s" % (gages))
    station_dict = stage_queries.station_dict(gages)
    station1 = station_dict.values()[0]
    beginDate = form.cleaned_data["timeseries_start"]
    endDate = form.cleaned_data["timeseries_end"]
    q, dt = stage_queries.daily_query_split(*station_dict.values())
    if beginDate:
        q = q.where(dt >= beginDate)
    if endDate:
        q = q.where(dt <= endDate)
    data = q.execute()
    return data, beginDate, endDate, station1
예제 #6
0
def _daily_plot_data(form):
    gages = form.cleaned_data['site_list']
    _logger.info("plot_data, gages is %s" % (gages))
    station_dict = stage_queries.station_dict(gages)
    station1 = station_dict.values()[0]
    beginDate = form.cleaned_data["timeseries_start"]
    endDate = form.cleaned_data["timeseries_end"]
    q, dt = stage_queries.daily_query_split(*station_dict.values())
    if beginDate:
        q = q.where(dt >= beginDate)
    if endDate:
        q = q.where(dt <= endDate)
    data = q.execute()
    return data, beginDate, endDate, station1