draw_limb

sunpy.visualization.draw_limb(axes, observer, *, rsun: Unit("m") = <<class 'astropy.constants.iau2015.IAU2015'> name='Nominal solar radius' value=695700000.0 uncertainty=0.0 unit='m' reference='IAU 2015 Resolution B 3'>, resolution=1000, **kwargs)[source]

Draws the solar limb as seen by the specified observer.

The limb is a circle for only the simplest plots. If the specified observer of the limb is different from the observer of the coordinate frame of the plot axes, not only may the limb not be a true circle, a portion of the limb may be hidden from the observer. In that case, the circle is divided into visible and hidden segments, represented by solid and dotted lines, respectively.

Parameters
  • axes (axes or None) – Axes to plot limb on.

  • observer (astropy.coordinates.SkyCoord) – Observer coordinate for which the limb is drawn.

  • rsun (Quantity) – Solar radius (in physical length units) at which to draw the limb. Defaults to the standard photospheric radius.

  • resolution (int) – The number of points to use to represent the limb.

Returns

  • visible (Polygon or Circle or None) – The patch added to the axes for the visible part of the limb (i.e., the “near” side of the Sun).

  • hidden (Polygon or None) – The patch added to the axes for the hidden part of the limb (i.e., the “far” side of the Sun).

Notes

Keyword arguments are passed onto the patches.

If the limb is a true circle, visible will instead be Circle and hidden will be None.

If there are no hidden points (e.g., on a synoptic map any limb is fully visible) hidden will be None.

If there are no visible points (e.g., for an observer on the opposite side of the Sun to the map observer) visible will be None.

To avoid triggering Matplotlib auto-scaling, these patches are added as artists instead of patches. One consequence is that the plot legend is not populated automatically when the limb is specified with a text label. See Composing Custom Legends in the Matplotlib documentation for examples of creating a custom legend.