If I use the example from the documentation for SolarEclipse and simply replace the years there with older ones, say from around Shakespeare's time,

startYear = 1575; endYear = 1614;

I'm unable to plot anything and get repeated errors:

Missing is not a graphics primitive or directive

Is "TotalPhasePolygon" available for only a limited range of dates. If so what dates and where is that documented?


1 Answer 1


When this data was originally curated, NASA was providing polygon data for a subset of the eclipses in their catalog.

Since then, NASA has changed their site, and they now give the Besselian Elements for every eclipse. Here are the elements for an eclipse from 798 BC.

Since it's possible to compute the relevant paths from these elements, we would definitely like to improve our coverage for historic eclipses.

To find out which eclipses have polygons, it is necessary to grab all the data and filter out the missing elements

data = Thread[
   {SolarEclipse[{DateObject[{-500, 1, 1, 0, 0}], Today, All}, 
     SolarEclipse[{DateObject[{-500, 1, 1, 0, 0}], Today, All}, 

(* 1255 *)

Length@DeleteCases[data, {_, _Missing}]
(* 96 *)

First @ DeleteCases[data, {_, _Missing}]

enter image description here

So the earliest eclipse we have polygons for is in 1654.

  • $\begingroup$ And that's not documented anywhere, right? $\endgroup$
    – orome
    Jul 30, 2018 at 20:16
  • $\begingroup$ Unfortunately we don't have a mechanism for documenting which property values are available - it's a general issue in the knowledge base, not restricted to eclipses. $\endgroup$
    – Jason B.
    Jul 30, 2018 at 20:33
  • $\begingroup$ How about: “Not available for all dates”? $\endgroup$
    – orome
    Jul 30, 2018 at 22:10
  • 2
    $\begingroup$ Open doc page, Cmd-F "Missing" - it is indeed not mentioned. I'll file a bug that this should be added to the "Possible Issues" section of the doc page. $\endgroup$
    – Jason B.
    Jul 30, 2018 at 22:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.