This package can
of Cassini ISS data.
Furthermore, it can be used to show ISS data of Saturn rings, with (hopefully) correct ring radius and azimuth as plot axes. As a special add-on, it uses a data-file of Inner Lindblad Resonances to display them on top of the images.
Note: For the (re-)calibration the user has to have an ISIS environment installed: https://isis.astrogeology.usgs.gov/documents/InstallGuide/index.html
The pysis module which is used by pyciss will automatically activate it, if it is findable from the shell where the Python/IPython interpreter was launched.
Upon the first time, the pyciss.io module would be imported, an error will appear saying that
No configuration file [...] found.
Please run `pyciss.io.set_database_path()` and provide the path where
you want to keep your automatically downloaded images.
`pyciss` will store this path in [...], where you can easily change it later."
When calling the aforementioned function with a path, that path will be used to store the downloaded and managed ISS data.
managed refers here to the fact that all later derived data products will automatically be stored in the folder of the respective ISS image_id, under the path that the user provided at this initial setup step.
In [ ]:
id_ = 'N1467344745'
In [ ]:
from pyciss import io
pm = io.PathManager(id_)
The self-representation of an object in Jupyter notebooks is already useful in this case:
In [ ]:
pm
The downloader module offers some helpers to get data:
In [ ]:
from pyciss import downloader
In [ ]:
downloader.download_file_id(id_)
Now look at the self-representation of the PathManager object again:
In [ ]:
pm
In [ ]:
downloader.download_and_calibrate(id_)
In [ ]:
from osgeo import gdal
In [ ]:
ds = gdal.Open(str(pm.raw_label))
In [ ]:
%matplotlib nbagg
In [ ]:
data = ds.ReadAsArray()
In [ ]:
vmin,vmax = np.percentile(data, (1, 99))
In [ ]:
plt.imshow(data, vmin=vmin, vmax=vmax, cmap='gray')
In [ ]:
from pyciss.ringcube import RingCube
In [ ]:
cube = RingCube(pm.cubepath)
In [ ]:
cube.imshow()
In [ ]: