类文档

表示 igraph 配置详情的类。

请注意,此类的实例只有一个,igraph 本身在需要时会使用它来检索配置参数。您可以通过 instance() 方法访问此实例。您可以通过直接调用构造函数来构建其他实例,但这些实例不会影响 igraph 的行为。如果您有兴趣配置 igraph,请使用 igraph.config 来获取单例实例,然后修改它。

总体思路

igraph 的配置以名称-值对的形式存储。此对象使用 dict 中已知的语法提供对配置数据的接口。

>>> c = Configuration()
>>> c["general.verbose"] = True
>>> print(c["general.verbose"])
True

配置键按节进行组织,给定键的名称始终采用以下形式:section.keyname例如,在上例中:general.verbose在这种情况下,general是配置节的名称,而verbose是键的名称。如果省略了节的名称,则默认为general,因此general.verbose可以称为verbose:

>>> c = Configuration()
>>> c["verbose"] = True
>>> print(c["general.verbose"])
True

用户级别的配置存储在~/.igraphrc上。在 Linux 和 Mac OS X 系统上,默认情况下是这样,或者在 Windows 系统上是C:\Documents and Settings\username\.igraphrc。但是,只有当igraph通过 igraph.app.shell 中定义的 shell 接口启动时,才会读取此配置。此行为可能在 1.0 版本之前发生更改。

已知配置键

下面列出了已知配置键,按节排序。在程序代码中引用它们时,不要忘记添加节名称,除非是节general.

常规设置

这些设置都存储在节general.

  • shells:要与命令行一起使用的首选 Python shell 列表igraph脚本。列表中的 shell 会逐一尝试,直到在系统中找到其中任何一个。igraph然后将函数导入 shell 的主命名空间,并启动 shell。可以在 igraph.app.shell 中找到已知的 shell 及其相应的类名。示例IPythonShell, ClassicPythonShell。顺便说一句,这是默认设置。
  • verboseigraph 是否应该说比必要时更多的信息。例如,如果设置为True,则某些函数会显示进度条。

绘图设置

这些设置指定了绘图函数使用的默认值。它们都存储在节plotting.

  • backend:“cairo”,如果您想使用 Cairo 进行绘图,或者“matplotlib”,如果您想使用 Matplotlib 绘图后端。
  • layout:要使用的默认图布局算法。
  • mark_groups:在绘制聚类对象时,是否用多边形标记聚类。
  • palette:用于将整数转换为颜色的默认调色板。有关更多信息,请参见 colors.Palette。有效的调色板名称存储在colors.palettes.
  • wrap_labels:如果顶点的标签不适合放在顶点内,是否尝试自动换行。默认False.

Shell 设置

这些设置指定了 igraph 嵌入的外部环境(例如 IPython 及其 Qt 控制台)的选项。这些设置存储在节shell.

  • ipython.inlining.Plot:在 IPython 控制台中,如果控制台支持,是否显示 Plot 类的实例。默认True
类型 用于实现配置键的自定义 getter/setter 函数的静态类
类方法 实例 返回配置对象的单个实例。
方法 __contains__ 检查给定的配置项是否已设置。
方法 __delitem__ 从配置中删除给定的项。
方法 __getitem__ 返回给定的配置项。
方法 __init__ 创建新的配置实例。
方法 __setitem__ 设置给定的配置项。
方法 has_key 检查配置是否具有给定的键。
方法 load 从给定的文件加载配置。
方法 save 保存配置。
属性 filename 返回与对象关联的文件名。
静态方法 _item_to_section_key 将项描述转换为节-键对。
方法 _get 内部函数,用于返回给定节中给定键的值。
类变量 _definitions 未文档化
类变量 _instance 未文档化
类变量 _sections 未文档化
类变量 _types 未文档化
实例变量 _config 未文档化
实例变量 _filename 用于创建对象的配置文件名,或者如果未知则为 ``None``。
def instance(cls): (来源)

返回配置对象的单个实例。

def __contains__(self, item: str) -> bool: (来源)

检查给定的配置项是否已设置。

参数
item:str要检查的配置键。
返回
boolTrue如果键具有关联值,则返回False否则。
def __delitem__(self, item: str): (来源)

从配置中删除给定的项。

如果该项有默认值,则会写回默认值而不是当前值。如果没有默认值,则该项将被真正删除。

def __getitem__(self, item: str): (来源)

返回给定的配置项。

参数
item:str要检索的配置键。
返回
配置值
def __init__(self, filename=None): (来源)

创建新的配置实例。

参数
filename要读取的文件或类似文件的对象。可以省略。
def __setitem__(self, item: str, value): (来源)

设置给定的配置项。

参数
item:str要设置的配置键
value配置键的新值
def has_key(self, item: str) -> bool: (来源)

检查配置是否具有给定的键。

参数
item:str正在搜索的键
返回
bool未文档化
def load(self, stream=None): (来源)

从给定的文件加载配置。

参数
stream文件名或文件对象。将从此处加载配置。可以省略,在这种情况下,将加载用户级配置。
def save(self, stream: str | IO[str] | None = None): (来源)

保存配置。

参数
stream:str | IO[str] | None文件名或类文件对象。配置将保存到此处。可以省略,在这种情况下,将覆盖用户级配置文件。

返回与对象关联的文件名。

通常是在创建对象时使用的配置文件名。Configuration.load 总是用传递给它的文件名覆盖它。如果None,则配置是凭空创建的,或者它已从没有名称信息的流中更新。

def _item_to_section_key(item: str) -> tuple[str, str]: (来源)

将项描述转换为节-键对。

参数
item:str要转换的项
返回
tuple[str, str]如果item包含一个句点(.),则在第一个句点处将其拆分为两部分,然后返回这两部分,因此句点前的部分是节。如果item不包含句点,则假定节为general,则返回对的第二部分包含item不变
def _get(self, section: str, key: str): (来源)

内部函数,用于返回给定节中给定键的值。

_definitions: dict = (来源)

未文档化

_instance = (来源)

未文档化

_sections: Sequence[str] = (来源)

未文档化

未文档化

未文档化

_filename: str | None = (来源)

用于创建对象的配置文件名,或者如果未知则为 ``None``。