@@ -54,7 +54,7 @@ def __init__(self, prnt):
54
54
self .plotTitle = None
55
55
self .numBins = 25
56
56
self .binWidth = 1.5
57
- self .boxWhiskerMethod = "Month "
57
+ self .boxWhiskerMethod = "month "
58
58
59
59
self .yrange = 0
60
60
self .color = ""
@@ -226,8 +226,10 @@ def getSelectedSeries(self, seriesID):
226
226
return self .createSeriesInfo (seriesID , seriesInfo , series )
227
227
228
228
def createSeriesInfo (self , seriesID , seriesInfo , series ):
229
- startDate = series .begin_date_time
230
- endDate = series .end_date_time
229
+
230
+ dates = self .memDB .series_service .get_result_dates (series .ResultID )
231
+ startDate = dates [1 ]
232
+ endDate = dates [0 ]
231
233
232
234
if endDate > self .endDate :
233
235
self .endDate = endDate
@@ -237,14 +239,15 @@ def createSeriesInfo(self, seriesID, seriesInfo, series):
237
239
if not self .isSubsetted :
238
240
self .currentStart = self .startDate
239
241
self .currentEnd = self .endDate
240
-
241
- variableName = series .variable_name
242
- unitsName = series .variable_units_name
243
- siteName = series .site_name
244
- dataType = series .data_type
245
- variable = self .memDB .series_service .get_variable_by_id (series .variable_id )
246
-
247
- noDataValue = variable .no_data_value
242
+ #TODO odm2
243
+
244
+ unitsName = series .UnitsObj .UnitsName
245
+ siteName = series .FeatureActionObj .SamplingFeatureObj .SamplingFeatureName
246
+ dataType = "datatype" #series.data_type
247
+ #variable = self.memDB.series_service.get_variable_by_id(series.variable_id)
248
+ variable = series .VariableObj
249
+ variableName = variable .VariableNameCV
250
+ noDataValue = variable .NoDataValue
248
251
if self .editID == seriesID :
249
252
#d= DataFrame(pandas.read_sql())
250
253
logger .debug ("editing -- getting datavalues for graph" )
@@ -256,6 +259,7 @@ def createSeriesInfo(self, seriesID, seriesInfo, series):
256
259
data = self .memDB .getDataValuesforGraph (seriesID , noDataValue , self .currentStart , self .currentEnd )
257
260
logger .debug ("Finished plotting -- getting datavalues for graph" )
258
261
262
+
259
263
logger .debug ("assigning variables..." )
260
264
seriesInfo .seriesID = seriesID
261
265
seriesInfo .series = series
@@ -266,13 +270,13 @@ def createSeriesInfo(self, seriesID, seriesInfo, series):
266
270
seriesInfo .siteName = siteName
267
271
seriesInfo .variableName = variableName
268
272
seriesInfo .variableUnits = unitsName
269
- seriesInfo .plotTitle = "Site: " + siteName + " \n VarName: " + variableName + " \n QCL: " + series .quality_control_level_code
270
- seriesInfo .axisTitle = variableName + " (" + unitsName + ")"
273
+ seriesInfo .plotTitle = "Site: %s \n VarName: %s \n QCL: %s" % ( siteName , variableName , series .ProcessingLevelID )
274
+ seriesInfo .axisTitle = "%s (%s)" % ( variableName , unitsName )
271
275
seriesInfo .noDataValue = noDataValue
272
276
seriesInfo .dataTable = data
273
277
274
278
if len (data ) > 0 :
275
- seriesInfo .yrange = np .max (data ['DataValue ' ]) - np .min (data ['DataValue ' ])
279
+ seriesInfo .yrange = np .max (data ['datavalue ' ]) - np .min (data ['datavalue ' ])
276
280
else :
277
281
seriesInfo .yrange = 0
278
282
@@ -298,9 +302,9 @@ def getSeriesInfo(self, seriesID):
298
302
299
303
def buildPlotInfo (self , seriesInfo ):
300
304
#remove all of the nodatavalues from the pandas table
301
- filteredData = seriesInfo .dataTable [seriesInfo .dataTable ["DataValue " ] != seriesInfo .noDataValue ]
302
- val = filteredData ["Month " ].map (calcSeason )
303
- filteredData ["Season " ] = val
305
+ filteredData = seriesInfo .dataTable [seriesInfo .dataTable ["datavalue " ] != seriesInfo .noDataValue ]
306
+ val = filteredData ["month " ].map (calcSeason )
307
+ filteredData ["season " ] = val
304
308
305
309
# construct tasks for the task server
306
310
tasks = [("Probability" , filteredData ),
@@ -353,12 +357,12 @@ class Statistics(object):
353
357
def __init__ (self , data ):
354
358
start_time = timeit .default_timer ()
355
359
356
- dvs = data ["DataValue " ]
360
+ dvs = data ["datavalue " ]
357
361
count = len (dvs )
358
362
if count > 0 :
359
363
360
364
time = timeit .default_timer ()
361
- self .NumberofCensoredObservations = len (data [data ["CensorCode " ] != "nc" ])
365
+ self .NumberofCensoredObservations = len (data [data ["censorcodecv " ] != "nc" ])
362
366
elapsed = timeit .default_timer () - time
363
367
logger .debug ("censored observations using len: %s" % elapsed )
364
368
@@ -396,13 +400,13 @@ def __init__(self, data, method):
396
400
self .intervals = {}
397
401
self .method = method
398
402
399
- interval_types = ["Overall " , "Year " , "Month " , "Season " ]
400
- intervals = ["Overall " , "Year " , "Month " , "Season " ]
403
+ interval_types = ["overall " , "year " , "month " , "season " ]
404
+ intervals = ["overall " , "year " , "month " , "season " ]
401
405
402
406
interval_options = zip (interval_types , intervals )
403
407
for interval_type , interval in interval_options :
404
408
start_time = timeit .default_timer ()
405
- if interval_type == "Overall " :
409
+ if interval_type == "overall " :
406
410
interval = data
407
411
else :
408
412
interval = data .groupby (interval_type )
@@ -421,18 +425,18 @@ def calculateBoxWhiskerData(self, interval, interval_type):
421
425
422
426
results = self .calculateIntervalsOnGroups (interval )
423
427
424
- if interval_type == "Season " or interval_type == "Month " :
428
+ if interval_type == "season " or interval_type == "month " :
425
429
func = None
426
- if interval_type == "Season " :
430
+ if interval_type == "season " :
427
431
func = numToSeason
428
- elif interval_type == "Month " :
432
+ elif interval_type == "month " :
429
433
func = numToMonth
430
434
431
435
self .intervals [interval_type ] = BoxWhiskerPlotInfo (
432
436
interval_type , interval_type , [func (x ) for x in results ["names" ]],
433
437
[results ["median" ], results ["conflimit" ], results ["mean" ], results ["confint" ]])
434
438
435
- elif interval_type == "Overall " :
439
+ elif interval_type == "overall " :
436
440
self .intervals [interval_type ] = BoxWhiskerPlotInfo (
437
441
interval_type , None , [],
438
442
[results ["median" ], results ["conflimit" ], results ["mean" ], results ["confint" ]])
@@ -452,7 +456,7 @@ def calculateIntervalsOnGroups(self, interval):
452
456
453
457
if isinstance (interval , pd .core .groupby .DataFrameGroupBy ):
454
458
for name , group in interval :
455
- datavalue = group ['DataValue ' ]
459
+ datavalue = group ['datavalue ' ]
456
460
group_mean = np .mean (datavalue )
457
461
group_median = np .median (datavalue )
458
462
group_std = math .sqrt (np .var (datavalue ))
@@ -467,8 +471,8 @@ def calculateIntervalsOnGroups(self, interval):
467
471
median .append (group_median )
468
472
mean .append (group_mean )
469
473
else :
470
- name = "Overall "
471
- datavalue = interval ['DataValue ' ]
474
+ name = "overall "
475
+ datavalue = interval ['datavalue ' ]
472
476
data_mean = np .mean (datavalue )
473
477
data_median = np .median (datavalue )
474
478
data_std = math .sqrt (np .var (datavalue ))
@@ -539,7 +543,7 @@ def __init__(self, data):
539
543
:param data:
540
544
:return:
541
545
"""
542
- self .yAxis = data ['DataValue ' ]
546
+ self .yAxis = data ['datavalue ' ]
543
547
# Determine rank, sorting values doesn't change outcome while using pandas.
544
548
ranks = self .yAxis .rank ()
545
549
PrbExc = ranks / (len (ranks ) + 1 ) * 100
0 commit comments