def draw(self, proj, mouse_x, mouse_y, ui_manager): self.painter = BatchPainter() self.painter.set_color([0,0,255]) df = self.data.where((self.data['timestamp'] > self.t) & (self.data['timestamp'] <= self.t + 30*60)) proj.fit(BoundingBox.from_points(lons=df['lon'], lats=df['lat']), max_zoom=14) x, y = proj.lonlat_to_screen(df['lon'], df['lat']) self.painter.linestrip(x, y, 10) self.t += 30 if self.t > self.data['timestamp'].max(): self.t = self.data['timestamp'].min() self.painter.batch_draw() ui_manager.info(epoch_to_str(self.t))
def bbox(self): return BoundingBox.from_points(lons=self.data['lon'], lats=self.data['lat'])
def bbox(self): return BoundingBox.from_points( lons=np.hstack([self.data[self.src_lon], self.data[self.dest_lon]]), lats=np.hstack([self.data[self.src_lat], self.data[self.dest_lat]]))
def bbox(self): return BoundingBox.from_points(lons=np.hstack([self.data[self.src_lon], self.data[self.dest_lon]]), lats=np.hstack([self.data[self.src_lat], self.data[self.dest_lat]]))