def plot( self, ax: Axes, text_kw=None, shift=dict(units="dots", x=15), **kwargs ) -> List[Artist]: if text_kw is None: text_kw = {} if "projection" in ax.__dict__ and "transform" not in kwargs: from cartopy.crs import PlateCarree from matplotlib.transforms import offset_copy kwargs["transform"] = PlateCarree() geodetic_transform = PlateCarree()._as_mpl_transform(ax) text_kw["transform"] = offset_copy(geodetic_transform, **shift) if "color" not in kwargs: kwargs["color"] = "black" if "s" not in text_kw: text_kw["s"] = getattr(self, "callsign", "") cumul: List[Artist] = [] cumul.append(ax.scatter(self.longitude, self.latitude, **kwargs)) cumul.append(ax.text(self.longitude, self.latitude, **text_kw)) return cumul
def plot( self, ax: Axes, text_kw=None, shift=None, **kwargs ) -> List[Artist]: # coverage: ignore if shift is None: # flake B006 shift = dict(units="dots", x=15) if text_kw is None: text_kw = {} else: # since we may modify it, let's make a copy text_kw = {**text_kw} if "projection" in ax.__dict__ and "transform" not in kwargs: from cartopy.crs import PlateCarree from matplotlib.transforms import offset_copy kwargs["transform"] = PlateCarree() geodetic_transform = PlateCarree()._as_mpl_transform(ax) text_kw["transform"] = offset_copy(geodetic_transform, **shift) if "color" not in kwargs: kwargs["color"] = "black" if "s" not in text_kw: if hasattr(self, "callsign"): text_kw["s"] = getattr(self, "callsign") # noqa: B009 if hasattr(self, "name"): text_kw["s"] = getattr(self, "name") # noqa: B009 cumul: List[Artist] = [] cumul.append(ax.scatter(self.longitude, self.latitude, **kwargs)) cumul.append(ax.text(self.longitude, self.latitude, **text_kw)) return cumul
def draw_samples(self, ax: Axes): ax.scatter([s[1] for s in self._samples], [s[0] for s in self._samples], s=1, c='red')