# plotastrodata
Python package to make figures from radio astronomical data by astropy and matplotlib.
## Demo and Usage
For the installation, conda and are available.
```bash
conda install conda-forge::plotastrodata
```
or
```bash
pip install plotastrodata
```
The following is the way to install plotastrodata manually. The file example.py will help you find out how to use this package.
```bash
git clone https://github.com/yusukeaso-astron/plotastrodata
cd plotastrodata
python example.py
```
To keep the package updated, always type the command below in the directory plotastrodata before you use it.
```bash
git pull
```
Also, setting the path in .bashrc (or .zshrc, etc.) will be useful.
```bash
export PYTHONPATH=${PYTHONPATH}:/YOUR_PATH_TO/plotastrodata
```
Or directly in your script,
```Python
import sys
sys.path.append( "/YOUR_PATH_TO/plotastrodata" )
```
The Sphinx html document is available from docs/_build/index.html or [readthedocs](https://plotastrodata.readthedocs.io/en/latest/).
## Features
plotastrodata can do the following things.
* Make 3D channel maps, 3D rotatable html cube, or 2D images including position-velocity diagrams.
* Color scale can be linear, log, and asinh.
* Make a figure of line profiles with Gaussian fitting.
* Plot images to externally given fig and ax (2D images only).
* Combine color, contour, segment, and RGB maps using images with different spatial grids.
* Input fits files or 2D/3D numpy arrays.
* Select the R.A.-Dec. style or the offset style as the x/y tick labels.
* Fill channel maps with a 2D image.
* Add line, arrow, ellipse, rectangle, text, and marker in specified channels.
* Use original arguments of matplotlib (pcolormesh, contour, quiver, plot, text, Ellipse, Rectangle).
* Other functions for plotting line profiles and a spatial 1D slice.
* example_advanced.py includes how to make a movie of channel maps.
* There are other utilities for Fourier transform and fitting.
## Requirement
* astropy
* corner (only for fitting)
* dynesty (only for fitting)
* ffmpeg (only for movie)
* matplotlib
* multiprocess (only for fitting)
* numpy
* pillow (only for RGB figures)
* plotly (only for html cube)
* ptemcee (only for fitting)
* scikit-image (only for html cube)
* scipy
* tqdm (only for fitting)
## Installation
Download from https://github.com/yusukeaso-astron/plotastrodata or git clone.
```bash
git clone https://github.com/yusukeaso-astron/plotastrodata
```
## Note
* For 3D data, a 1D velocity array or a FITS file with a velocity axis must be given to set up channels on each page.
* For 2D/3D data, the spatial center can be read from a FITS file or manually given.
* len(v)=1 (default) means to make a 2D figure.
* Spatial lengths are in the unit of arcsec, or au if dist (!= 1) is given.
* Angles are in the unit of degree.
* For region, line, arrow, label, and marker, a single input can be treated without a list, e.g., anglelist=60, as well as anglelist=[60].
* Each element of poslist supposes a text coordinate like '01h23m45.6s 01d23m45.6s' or a list of relative x and y like [0.2, 0.3] (0 is left or bottom, 1 is right or top).
* Parameters for original methods in matplotlib.axes.Axes can be used as kwargs; see the default kwargs0 for reference.
* Position-velocity diagrams (pv=True) do not yet support region, line, arrow, and segment because the units of abscissa and ordinate are different.
## Author
* Name: Yusuke Aso
* Affiliation: Korea Astronomy and Space Science Institute
* E-mail: yaso@kasi.re.kr
## License
"plotastrodata" is under [GNU General Public License Version 3](https://www.gnu.org/licenses/gpl-3.0.html).
Raw data
{
"_id": null,
"home_page": "https://github.com/yusukeaso-astron/plotastrodata",
"name": "plotastrodata",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "astronomy, FITS, plot",
"author": "yusukeaso-astron",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/3a/46/f727b365c8536690b57b974420ad488bd637edd17f60fdbfc11c34c6f2a5/plotastrodata-1.0.5.post2.tar.gz",
"platform": null,
"description": "# plotastrodata\nPython package to make figures from radio astronomical data by astropy and matplotlib.\n\n\n## Demo and Usage\nFor the installation, conda and are available.\n```bash\nconda install conda-forge::plotastrodata\n```\nor\n```bash\npip install plotastrodata\n```\nThe following is the way to install plotastrodata manually. The file example.py will help you find out how to use this package.\n```bash\ngit clone https://github.com/yusukeaso-astron/plotastrodata\ncd plotastrodata\npython example.py\n```\nTo keep the package updated, always type the command below in the directory plotastrodata before you use it.\n```bash\ngit pull\n```\nAlso, setting the path in .bashrc (or .zshrc, etc.) will be useful.\n```bash\nexport PYTHONPATH=${PYTHONPATH}:/YOUR_PATH_TO/plotastrodata\n```\nOr directly in your script,\n```Python\nimport sys\nsys.path.append( \"/YOUR_PATH_TO/plotastrodata\" )\n```\nThe Sphinx html document is available from docs/_build/index.html or [readthedocs](https://plotastrodata.readthedocs.io/en/latest/).\n \n## Features\n \nplotastrodata can do the following things.\n* Make 3D channel maps, 3D rotatable html cube, or 2D images including position-velocity diagrams.\n* Color scale can be linear, log, and asinh.\n* Make a figure of line profiles with Gaussian fitting.\n* Plot images to externally given fig and ax (2D images only).\n* Combine color, contour, segment, and RGB maps using images with different spatial grids.\n* Input fits files or 2D/3D numpy arrays.\n* Select the R.A.-Dec. style or the offset style as the x/y tick labels.\n* Fill channel maps with a 2D image.\n* Add line, arrow, ellipse, rectangle, text, and marker in specified channels.\n* Use original arguments of matplotlib (pcolormesh, contour, quiver, plot, text, Ellipse, Rectangle).\n* Other functions for plotting line profiles and a spatial 1D slice.\n* example_advanced.py includes how to make a movie of channel maps.\n* There are other utilities for Fourier transform and fitting.\n \n## Requirement\n\n* astropy\n* corner (only for fitting)\n* dynesty (only for fitting)\n* ffmpeg (only for movie)\n* matplotlib\n* multiprocess (only for fitting)\n* numpy\n* pillow (only for RGB figures)\n* plotly (only for html cube)\n* ptemcee (only for fitting)\n* scikit-image (only for html cube)\n* scipy\n* tqdm (only for fitting)\n\n \n## Installation\n \nDownload from https://github.com/yusukeaso-astron/plotastrodata or git clone.\n```bash \ngit clone https://github.com/yusukeaso-astron/plotastrodata\n```\n \n## Note\n\n* For 3D data, a 1D velocity array or a FITS file with a velocity axis must be given to set up channels on each page.\n* For 2D/3D data, the spatial center can be read from a FITS file or manually given.\n* len(v)=1 (default) means to make a 2D figure.\n* Spatial lengths are in the unit of arcsec, or au if dist (!= 1) is given.\n* Angles are in the unit of degree.\n* For region, line, arrow, label, and marker, a single input can be treated without a list, e.g., anglelist=60, as well as anglelist=[60].\n* Each element of poslist supposes a text coordinate like '01h23m45.6s 01d23m45.6s' or a list of relative x and y like [0.2, 0.3] (0 is left or bottom, 1 is right or top).\n* Parameters for original methods in matplotlib.axes.Axes can be used as kwargs; see the default kwargs0 for reference.\n* Position-velocity diagrams (pv=True) do not yet support region, line, arrow, and segment because the units of abscissa and ordinate are different.\n \n## Author\n \n* Name: Yusuke Aso\n* Affiliation: Korea Astronomy and Space Science Institute\n* E-mail: yaso@kasi.re.kr\n \n## License\n \n\"plotastrodata\" is under [GNU General Public License Version 3](https://www.gnu.org/licenses/gpl-3.0.html).\n",
"bugtrack_url": null,
"license": "GNU General Public License Version 3",
"summary": "plotastrodata is a tool for astronomers to create figures from FITS files and perform fundamental data analyses with ease.",
"version": "1.0.5.post2",
"project_urls": {
"Download": "https://github.com/yusukeaso-astron/plotastrodata",
"Homepage": "https://github.com/yusukeaso-astron/plotastrodata"
},
"split_keywords": [
"astronomy",
" fits",
" plot"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "972e5909bed8cc390a5f60bfea04d9ae52e150e11b889cdd9ada13e9a8d98424",
"md5": "baf45bb50c01b4751312387e6a747e4d",
"sha256": "f200ac3c522768c334a79505e3a8470c4629782ef4733785276daef59884e551"
},
"downloads": -1,
"filename": "plotastrodata-1.0.5.post2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "baf45bb50c01b4751312387e6a747e4d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 54373,
"upload_time": "2024-12-17T07:49:22",
"upload_time_iso_8601": "2024-12-17T07:49:22.486067Z",
"url": "https://files.pythonhosted.org/packages/97/2e/5909bed8cc390a5f60bfea04d9ae52e150e11b889cdd9ada13e9a8d98424/plotastrodata-1.0.5.post2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a46f727b365c8536690b57b974420ad488bd637edd17f60fdbfc11c34c6f2a5",
"md5": "6ab5cdb95b4bd342eecd160d2654de45",
"sha256": "5cfdb97adf597b48853d5a4a07eb7814a886b89854e4862a2b6cadfcef03e068"
},
"downloads": -1,
"filename": "plotastrodata-1.0.5.post2.tar.gz",
"has_sig": false,
"md5_digest": "6ab5cdb95b4bd342eecd160d2654de45",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 53214,
"upload_time": "2024-12-17T07:49:24",
"upload_time_iso_8601": "2024-12-17T07:49:24.023268Z",
"url": "https://files.pythonhosted.org/packages/3a/46/f727b365c8536690b57b974420ad488bd637edd17f60fdbfc11c34c6f2a5/plotastrodata-1.0.5.post2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-17 07:49:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "yusukeaso-astron",
"github_project": "plotastrodata",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "plotastrodata"
}