def __call__(self, ts, container=None, **kwargs): '''Dump timeseries as a JSON string VBA-Excel friendly''' from ccy import date2juldate if istimeseries(ts): return list(tsiterator(ts, dateconverter=date2juldate, **kwargs)) else: raise NotImplementedError()
def __call__(self, ts, container=None, **kwargs): '''Dump timeseries as a JSON string VBA-Excel friendly''' from ccy import date2juldate from dynts.utils.anyjson import JSONdatainfo if istimeseries(ts): return list(tsiterator(ts, dateconverter=date2juldate, **kwargs)) else: raise NotImplementedError()
def _unwind(self): res = self.expression.unwind(self.data,self.backend) self._ts = None self._xy = None if istimeseries(res): self._ts = res elif res and isinstance(res,list): tss = [] xys = [] for v in res: if istimeseries(v): tss.append(v) elif isxy(v): xys.append(v) if tss: self._ts = merge(tss) if xys: self._xy = xys elif isxy(res): self._xy = res
def _unwind(self): res = self.expression.unwind(self.data, self.backend) self._ts = None self._xy = None if istimeseries(res): self._ts = res elif res and isinstance(res, list): tss = [] xys = [] for v in res: if istimeseries(v): tss.append(v) elif isxy(v): xys.append(v) if tss: self._ts = merge(tss) if xys: self._xy = xys elif isxy(res): self._xy = res
def dump(self, format, **kwargs): ts = self.ts() xy = self.xy() if istimeseries(ts): ts = ts.dump(format, **kwargs) else: ts = None if xy: if isxy(xy): xy = [xy] for el in xy: ts = el.dump(format, container = ts, **kwargs) return ts
def dump(self, format, **kwargs): ts = self.ts() xy = self.xy() if istimeseries(ts): ts = ts.dump(format, **kwargs) else: ts = None if xy: if isxy(xy): xy = [xy] for el in xy: ts = el.dump(format, container=ts, **kwargs) return ts
def __call__(self, ts, container = None, desc = False, **kwargs): '''Dump timeseries as a JSON string VBA-Excel friendly''' from ccy import date2juldate from dynts.utils.anyjson import JSONdatainfo if istimeseries(ts): return list(tsiterator(ts, dateconverter=date2juldate, desc = desc)) #return JSONdatainfo(list(tsiterator(ts, # dateconverter=date2juldate, # desc = desc)), # info = ts.info) else: raise NotImplementedError
def __call__(self, ts, container=None, desc=False, series_info=None, **kwargs): '''Dump timeseries as a JSON string compatible with ``flot``''' from dynts.web import flot from dynts.conf import settings pydate2flot = flot.pydate2flot result = container or flot.MultiPlot() df = {} series_info = series_info or df if istimeseries(ts): res = flot.Flot(ts.name, type='timeseries', **series_info) dates = asarray(ts.dates()) missing = settings.ismissing for name, serie in zip(ts.names(), ts.series()): info = series_info.get(name, df) data = [] append = data.append for dt, val in zip(dates, serie): if not missing(val): append([pydate2flot(dt), val]) serie = flot.Serie(label=name, data=data, **info) res.add(serie) else: res = flot.Flot(ts.name) if ts.extratype: for name, serie in zip(ts.names(), ts.series()): serie = flot.Serie(label=serie.name, data=serie.data, lines={'show': serie.lines}, points={'show': True}, scatter={ 'show': serie.points, 'extratype': ts.extratype }) res.add(serie) else: for name, serie in zip(ts.names(), ts.series()): serie = flot.Serie(label=serie.name, data=serie.data, lines={'show': serie.lines}, points={'show': serie.points}) res.add(serie) result.add(res) return result
def __call__(self, ts, container = None, desc = False, series_info = None, **kwargs): '''Dump timeseries as a JSON string compatible with ``flot``''' from dynts.web import flot from dynts.conf import settings pydate2flot = flot.pydate2flot result = container or flot.MultiPlot() df = {} series_info = series_info or df if istimeseries(ts): res = flot.Flot(ts.name, type = 'timeseries', **series_info) dates = asarray(ts.dates()) missing = settings.ismissing for name,serie in zip(ts.names(),ts.series()): info = series_info.get(name,df) data = [] append = data.append for dt,val in zip(dates,serie): if not missing(val): append([pydate2flot(dt),val]) serie = flot.Serie(label = name, data = data, **info) res.add(serie) else: res = flot.Flot(ts.name) if ts.extratype: for name,serie in zip(ts.names(),ts.series()): serie = flot.Serie(label = serie.name, data = serie.data, lines = {'show':serie.lines}, points = {'show':True}, scatter = {'show':serie.points, 'extratype':ts.extratype}) res.add(serie) else: for name,serie in zip(ts.names(),ts.series()): serie = flot.Serie(label = serie.name, data = serie.data, lines = {'show':serie.lines}, points = {'show':serie.points}) res.add(serie) result.add(res) return result