TransformGraph#
- class astropy.coordinates.TransformGraph[源代码]#
基类:
object表示坐标系之间路径的图。
属性摘要
A
dict此TransformGraph中所有Frame类的所有属性。A
set在此TransformGraph中的任何Frame类中定义的所有组件名称。A
set在此TransformGraph中存在的所有Frame类中。方法总结
add_transform(fromsys, tosys, transform)向图形添加新的坐标变换。
find_shortest_path(fromsys, tosys)计算沿变换图从一个系统到另一个系统的最短距离。
get_names\()返回所有可用的转换名称。
get_transform(fromsys, tosys)为两个坐标系之间的转换生成并返回CompositeTransform。
上下文管理器对所有适用的转换施加有限差分时间步长。
invalidate_cache\()使存储用于遍历转换图的优化的缓存无效。
lookup_name\(名称)尝试使用提供的别名定位坐标类。
remove_transform(fromsys, tosys, transform)从图形中删除坐标变换。
to_dot_graph([priorities, addnodes, savefn, ...])将此变换图形转换为 graphviz 点格式。
将此转换图转换为networkx图形。
transform(transcls, fromsys, tosys[, priority])用于定义转换的函数修饰符。
属性文档
方法文件
- add_transform(fromsys, tosys, transform)[源代码]#
向图形添加新的坐标变换。
- 参数:
- fromsys类
要开始的坐标系类。
- tosys类
要转换为的坐标系类。
- transform :
CoordinateTransformCoordinateTransform 变换对象。通常情况下,
CoordinateTransform对象,尽管它可能是使用相同签名调用的某些其他可调用对象。
- 加薪:
TypeError如果
fromsys或tosys不是类或transform不可调用。
- get_names()[源代码]#
返回所有可用的转换名称。它们都是
lookup_name.- 返回:
- nms :
listPython :列表 坐标系的别名。
- nms :
- get_transform(fromsys, tosys)[源代码]#
为两个坐标系之间的转换生成并返回CompositeTransform。
- 参数:
- fromsys类
要开始的坐标系类。
- tosys类
要转换为的坐标系类。
- 返回:
- trans :
CompositeTransformorNoneCompositeTransform或Python:无 如果有一条路从
fromsys到tosys,这是该路径的变换对象。如果找不到路径,这是None.
- trans :
笔记
A
CompositeTransform总是返回,因为CompositeTransform在调用它的方式上比其他转换类稍微更具适应性。具体地说,它以与1跳转换一致的方式处理转换的中间步骤。
- impose_finite_difference_dt(dt)[源代码]#
上下文管理器对所有适用的转换施加有限差分时间步长。
对于此转换图中具有属性的每个转换
finite_difference_dt,则将该属性设置为提供的值。具有此属性的唯一标准转换是FunctionTransformWithFiniteDifference。- 参数:
- dt :
Quantity[:ref: 'time' ]或callable()数量 [:ref: 'time'] 或python:Callable() 如果是一个量,这是用来做有限差分的微分的大小。如果是可赎回的,应该接受
(fromcoord, toframe)并返回dt价值。
- dt :
- lookup_name(name)[源代码]#
尝试使用提供的别名定位坐标类。
- 参数:
- name :
strPython :字符串 要查找的别名。
- name :
- 返回:
BaseCoordinateFrame子类对应于
name或None如果不存在这样的类。
- to_dot_graph(priorities=True, addnodes=[], savefn=None, savelayout='plain', saveformat=None, color_edges=True)[源代码]#
将此变换图形转换为 graphviz 点格式。
可选择保存(需要 graphviz 安装在您的路径上)。
- 参数:
- priorities : bool布尔
如果
True,显示每个变换的优先级值。否则,将不包括在图形中。- addnodes : sequence 的
strPYTHON:PYTHON的序列:字符串 要添加的其他坐标系(这可以包括变换图中已有的坐标系,但它们只会出现一次)。
- savefn :
None或strPYTHON:None或PYTHON:STR 要将此图形保存到或的文件名
None不保存到文件中。- savelayout{“素”、“点”、“neato”、“fdp”、“sfdp”、“Circo”、“twopi”、“nop”、“nop2”、“Osage”、“patchwork”}
用于布局图形的graphviz程序(请参见 graphviz 或'plain'来保存点图内容。忽略if
savefn是None.- saveformat :
strPython :字符串 graphviz输出格式。(例如
-Txxx命令行程序的选项-有关详细信息,请参阅graphviz docs)。忽略ifsavefn是None.- color_edges : bool布尔
根据变换类型为两个节点(帧)之间的边着色。
FunctionTransform:红色,StaticMatrixTransform:蓝色,DynamicMatrixTransform:绿色。
- 返回:
- dotgraph :
strPython :字符串 带点格式图形的字符串。
- dotgraph :
- to_networkx_graph()[源代码]#
将此转换图转换为networkx图形。
备注
你一定有 networkx 已安装包以使其正常工作。
- 返回:
- nxgraph :
networkx.Graphnetworkx.Graph 这
TransformGraphas a networkx.Graph 。
- nxgraph :
- transform(transcls, fromsys, tosys, priority=1, **kwargs)[源代码]#
用于定义转换的函数修饰符。
备注
如果装饰一个类的静态方法,
@staticmethod应添加 在上面 这个装修工。- 参数:
- 返回:
- deco : functionPYTHON:函数
可以作为装饰器在另一个函数上调用的函数(参见示例)。
笔记
此修饰符假定
transcls初始值设定项接受可调用的,而第二个和第三个fromsys和tosys。如果不是这样,则只需手动初始化类并使用add_transform而不是这个装饰师。实例
graph = TransformGraph() class Frame1(BaseCoordinateFrame): ... class Frame2(BaseCoordinateFrame): ... @graph.transform(FunctionTransform, Frame1, Frame2) def f1_to_f2(f1_obj): ... do something with f1_obj ... return f2_obj