class NYCTaxiExplorer(hv.streams.Stream): alpha = param.Magnitude(default=0.75, doc="Alpha value for the map opacity") colormap = param.ObjectSelector(default=cm_n["fire"], objects=cm_n.values()) hour = param.Integer(default=None, bounds=(0, 23), doc="All hours by default; drag to select one hour") passengers = param.Range(default=(0, max_pass), bounds=(0, max_pass)) location = param.ObjectSelector(default='dropoff', objects=['dropoff', 'pickup']) def make_view(self, x_range, y_range, **kwargs): map_tiles = tiles.opts(style=dict(alpha=self.alpha), plot=options) points = hv.Points(df, [self.location + '_x', self.location + '_y'], self.location + '_hour') selection = { self.location + "_hour": self.hour if self.hour else (0, 24), "passenger_count": self.passengers } taxi_trips = datashade(points.select(**selection), x_sampling=1, y_sampling=1, cmap=self.colormap, dynamic=False, x_range=x_range, y_range=y_range, width=1000, height=600) return map_tiles * taxi_trips
class OSMExplorer(hv.streams.Stream): alpha = param.Magnitude(default=0.75, doc="Map opacity") colormap = param.ObjectSelector(default=cm_n["fire"], objects=cm_n.values()) def make_view(self, x_range, y_range, **kwargs): tiles = map_tiles.options(alpha=self.alpha, **opts1) points = hv.Points(df, ['x', 'y']) return tiles * datashade(points, cmap=self.colormap, x_range=x_range, y_range=y_range, **opts2)
class ColormapPicker(hv.streams.Stream): colormap = param.ObjectSelector(default=cm_n["fire"], objects=cm_n.values())