安装#
概述#
安装的第一步 astropy
是为了确保您拥有一个Python环境, isolated 来自您的系统Python安装。这很重要因为 astropy
具有许多依赖项,并且您不想通过安装这些依赖项的不兼容版本而意外损坏您的系统。
对于本安装指南,我们使用 conda 包管理器由 miniforge .这是一个受欢迎的选择并且效果良好,尤其是对于新人来说。它易于在所有平台上安装和使用,并且可以轻松安装最新的Python版本。如果您已经有一个 miniforge
- 基于Python环境,那么您可以跳到 安装 astropy .
经验丰富的用户的另一个选择是虚拟环境管理器,例如Python标准库 venv module.如果您选择此选项,有许多资源可以帮助您以这种方式设置虚拟环境。
备注
我们 do not recommend 使用 astropy
与现有 miniconda 或 Anaconda Python 分布的 astropy
由Anaconda Inc.提供的包裹在 defaults
频道可能已经过时,并且这些发行版可能需要许可证才能在大型组织中使用。而应使用 miniforge
如下所述
一旦你有一个Python环境设置,你将安装 astropy
使用 pip 或 conda .在这里我们使用文档 pip 因为安装可选依赖项更容易,但可以随意使用 conda 如果你愿意的话。
安装 miniforge
#
您将首先安装Python miniforge .这提供了以下 conda package manager 默认远程包存储库设置为社区主导 conda-forge 频道
在新终端(Windows上的miniforge提示符)中运行 conda list
来测试安装是否有效
创建Python环境#
创建新的Python环境, astropy
和其他包,首先启动终端(在类UNIX系统下)或miniforge提示(在Windows下)。现在我们将创建并激活一个新的虚拟环境来安装 astropy
进入:
$ conda create --channel conda-forge --name astropy python
$ conda activate astropy
在这种情况下,我们创建的环境被命名为 astropy
但您可以使用任何您喜欢的名字。
将来当你做一个新的终端时,你需要运行 conda activate astropy
来激活这个环境。
安装 astropy
#
您可以安装 astropy
而您的其余依赖项则使用 pip 或 conda .这两种方法都得到了充分支持,并且效果良好。
使用PIP#
安装 astropy
和您选择的 dependencies ,运行以下命令之一::
python -m pip install astropy # Minimum required dependencies
python -m pip install "astropy[recommended]" # Recommended dependencies
python -m pip install "astropy[all]" # All optional dependencies
python -m pip install "astropy[dev_all]" # All optional and test dependencies
在大多数情况下,这将安装预编译版本的 astropy
(称为a wheel ).但是,如果您要在非常用平台上安装astropy,则将从源文件安装astropy。在这种不寻常的情况下,您需要安装C编译器(请参阅 Build from source 下面)才能成功安装。
警告
做 not 安装 astropy
或其他包使用 sudo
或任何更高的特权。
使用conda#
安装 astropy
以及所需的最小依赖项集,运行::
conda install --channel conda-forge astropy
使用::安装推荐的依赖项
conda install --channel conda-forge scipy matplotlib
使用以下命令安装可选依赖项:
conda install --channel conda-forge ipython jupyter dask h5py pyarrow \
beautifulsoup4 html5lib bleach pandas sortedcontainers pytz jplephem mpmath \
asdf-astropy bottleneck fsspec s3fs certifi
测试#
您可以测试新安装的版本 astropy
正在通过 documentation on how to test your installed version of astropy .
要求#
astropy
有以下严格要求:
Python 3.11 or later
NumPy >=1.23.2 or later
PyERFA >=2.0.1.1 or later
PyYAML >=6.0.0 或更晚
packaging >=22.0.0 or later
astropy
还取决于其他一些包的可选功能。以下是特别推荐的:
SciPy >=1.9.2 or later: To power a variety of features in several modules.
Matplotlib >=3.9.1 or later: To provide plotting functionality that
astropy.visualization
enhances.
进一步的依赖关系提供了更具体的功能:
BeautifulSoup: 阅读
Table
HTML文件中的对象。ipydatagrid: 用于
astropy.table.Table.show_in_notebook()
在Gluyter笔记本中显示Astropy表,backend="ipydatagrid"
.xmllint: 验证VOTABLE XML文件。这是一个安装在Python外部的命令行工具。
sortedcontainers 为了更快
SCEngine
索引引擎Table
,但在某些情况下,这可能仍然比默认索引引擎慢。pytz: 指定和转换时区。
jplephem: 检索太阳系物体的JPL星历。
setuptools: 用于发现用于将装配工插入的入口点
astropy.modeling.fitting
.mpmath: 用于#年的‘Kraft-Burrow-Nousek’区间
poisson_conf_interval
。asdf-astropy >=0.3 或更高版本:允许将各种Astroy类序列化为可移植的、分层的、人类可读的表示形式。
bottleneck: 改进了sigma裁剪的性能和其他可能需要计算具有NaN值的数组的统计信息的功能。
certifi: 从HTTPS或FTP+TLS站点下载文件时非常有用,以防Python无法在您的系统上找到最新的根CA证书;此包通常已包含在许多Python安装中(例如,作为
requests
包)。fsspec >=2023.4.0 or later: Enables access to subsets of remote FITS files without having to download the entire file.
s3fs >=2023.4.0 or later: Enables access to files hosted in AWS S3 cloud storage.
但是,请注意,只有在需要这些特定功能时,才需要安装这些软件包。 astropy
即使未安装这些依赖项也将导入。
测试时可以选择使用以下软件包:
|pyest-Asty|:请参阅 测试源代码构建
pytest-xdist: 用于分布式测试。
pytest-mpl: 用于测试Matplotlib图形。
objgraph: 仅用于测试参考泄漏的测试。
IPython >=8.0.0 or later: Used for testing the notebook interface of
Table
.coverage: 用于代码覆盖率测量。
skyfield: 用于测试太阳系坐标。
sgp4: 用于测试卫星位置。
tox: 用于自动化测试和文档构建。
从源头构建#
如果您想从源代码构建代码,请按照以下说明操作 Creating a development environment .请注意,您可以选择从主存储库克隆,而不是从您的分支克隆::
git clone https://github.com/astropy/astropy.git
cd astropy
除非您正在开发代码或文档或无法访问互联网,否则通常不需要构建文档,因为Astropy文档的稳定、最新和存档版本可在 docs.astropy.org .该过程描述于 Building the Documentation from Source .
测试源代码构建#
看到 latest documentation on how to run the tests in a source checkout of astropy .
安装预构建开发版本#
大多数夜晚都有一个发展快照 astropy
将会被汇编。如果您想要针对Astery的开发版本进行测试,但又不想自己构建它,那么这很有用。您可以看到 available astropy dev snapshots page 以找出目前提供的是什么。
安装这些“恶作剧” astropy
可以通过使用 pip
**
python -m pip install --upgrade --extra-index-url https://pypi.anaconda.org/astropy/simple astropy --pre
额外的索引URL告诉我们 pip
要检查 pip
Pypi.anaconda.org上的索引,其中存储了夜生活,以及 --pre
命令告诉 pip
安装预发布版本(在本例中 .dev
版本)。
您可以通过运行部分中所述的测试来测试此安装 Running tests on an installed astropy .