def update(self, datalist): if datalist != [None]: shift_insert(self.plot.source.data["dates"], datalist[0]) shift_insert(self.plot.source.data["values"], datalist[1]) shift_insert(self.plot.source.data["deltas"], self.plot.source.data["values"][-1] - self.plot.source.data["values"][-2]) return [self.plot.source]
def update(self, data): #supposto che, in assenza di dati per quella data, si riceve None. In questo caso non effettua niente, aspettando #il dato successivo (e il prossimo delta è calcolato tra primo e ultimo dato prima che vi sia stata assenza #degli stessi) if data != [None]: shift_insert(self.plot.source.data["dates"], data[0]) shift_insert(self.plot.source.data["values"], data[1]) shift_insert(self.plot.source.data["deltas"], self.plot.source.data["values"][-1] - self.plot.source.data["values"][-2]) return [self.plot.source]
def update(self, dataline): #supposto che, in caso di arrivo dati non validi o assenza dati, si riceve None if dataline != None: #in caso di arrivo dati validi datalist = split_csvline_yf(dataline, "str") shift_insert(self.plot.source.data["dates"], datalist[0]) shift_insert(self.plot.source.data["close"], datalist[4]) shift_insert(self.plot.source.data["delta"], self.plot.source.data["close"][-1] - self.plot.source.data["close"][-2]) else: #in caso di assenza dati o arrivo dati non validi pass #non aggiunge alcun dato alla tabella, aspettando il dato successivo. Il prossimo delta è calcolato tra il primo e #non aggiunge alcun dato alla tabella, aspettando il dato successivo. Il prossimo delta è calcolato tra il primo e #l'ultimo dato prima che vi sia stata assenza degli stessi return [self.plot.source] #ritorna il data source delle colonne, wrappato in lista per poterlo estrarre nel modo più generale