graph-tool is a Python module for manipulation and statistical analysis of graphs[disambiguation needed] (a.k.a. networks).

graph-tool是一个操作和统计分析图表的Python模块。

The core data structures and algorithms of graph-tool are implemented in C++, making extensive use of metaprogramming, based heavily on the Boost Graph Library.

graph-tool核心的数据结构和算法是用c++实现的,其大量使用元编程,依赖于Boost Graph库。

This type of approach can confer a level of performance which is comparable (both in memory usage and computation time) to that of a pure C++ library, which can be several orders of magnitude better than pure Python.[1]

这种方法会带来一定程度的性能优势,甚至能与纯c++库相匹敌(在内存使用和计算时间上),这可以比单纯使用Python好几个数量级。

Furthermore, many algorithms are implemented in parallel using OpenMP, which provides increased performance on multi-core architectures.

此外,许多算法由并行使用OpenMP实现,这使得其在多核体系结构机器上的性能有显著提升。


内容

  1. 特征
  2. 适用性
  3. 参考文献
  4. 外部链接

1.特征

Creation and manipulation of directed or undirected graphs.

  • 直接或间接地创建和操纵图表。

Association of arbitrary information to the vertices, edges or even the graph itself, by means of property maps.

  • 通过属性映射,将任意的信息与顶点、边甚至是图本身相关联起来。

Filter vertices and/or edges "on the fly", such that they appear to have been removed.

  • “动态”地过滤顶点和/或边,这样它们看起来似乎已经被移除。

Support for dot, Graph Modelling Language and GraphML formats.

  • 支持点,图形建模语言和GraphML格式。

Convenient and powerful graph drawing based on cairo or Graphviz.

  • 便捷和强大的图形绘制能力(基于cairo和Graphviz)。

Support for typical statistical measurements: degree/property histogram, combined degree/property histogram, vertex-vertex correlations, assortativity, average vertex-vertex shortest path, etc.

  • 支持典型的统计指标:degree/property直方图,combined degree/property直方图,vertex-vertex相关性,assortativity vertex-vertex平均最短路径等。

Support for several graph-theoretical algorithms: such as graph isomorphism, subgraph isomormism, minimum spanning tree, connected components, dominator tree, maximum flow, etc.

  • 支持几个图形理论算法:例如,图同构,子图同构,最小生成树,连接组件,支配树,最大流法。

Support for several centrality measures.

  • 支持多种中心性。

Support for clustering coefficients, as well as network motif statistics and community structure detection.

  • 支持集群系数,以及网络motif统计和群体结构检测。

Generation of random graphs, with arbitrary degree distribution and correlations.

  • 具有任意分布度和相关性的随机图的生成,。

Support for well-established network models: Price, Barabási-Albert, Geometric Networks, Multidimensional lattice graph, etc.

  • 支持已经建立的网络模型:如,Price、Barabasi-Albert、几何网络多维网格图等。

2.适用性

Graph-tool can be used to work with very large graphs in a variety of contexts, including
Graph-tool可以用来处理各种情况下非常大的图,包括

simulation of cellular tissue
模拟细胞组织
data mining
数据挖掘
analysis of social networks
社交网络分析
analysis of P2P systems,[7]
P2P系统分析
large-scale modeling of agent-based systems,[8]
大规模的基于主体系统的建模
study of academic Genealogy trees,[9]
研究学术家谱树
theoretical assessment
理论评估
and modeling of network clustering,[10]
网络聚类和建模
large-scale call graph analysis,[11][12]
大规模的调用图分析
and analysis of the brain's Connectome.[13]
分析大脑的连接体


3.参考文献

参见原链接


4.外部链接

Graph-tool官网


来源网址:Graph-tool - From Wikipedia, the free encyclopedia

Graph-tool简介 - wiki的更多相关文章

  1. Graph Cut 简介

    转:http://www.cnblogs.com/longdouhzt/archive/2012/05/11/2496373.html [简介] Graph Cuts 不等于 graph cut(如 ...

  2. Retrofit 简介 wiki 文档

    简介 Type-safe HTTP client for Android and Java by Square, Inc. GitHub主页:https://github.com/square/ret ...

  3. Tiny C Compiler简介-wiki

    Tiny C Compiler(缩写为TCC.tCc或TinyCC)是一个用于x86(16/32位)或x86-64(64位)系统的C编译器,开发者为Fabrice Bellard.软件是设计用于低级计 ...

  4. Wiki知识介绍

    Wiki简介 Wiki一词来源于夏威夷语的“wee kee wee kee”,原本是“快点快点”的意思,被译为“维基”或“维客”.一种多人协作的写作工具.Wiki站点可以有多人(甚至任何访问者)维护, ...

  5. RAID技术介绍

    RAID技术介绍 简介 RAID是一个我们经常能见到的名词.但却因为很少能在实际环境中体验,所以很难对其原理 能有很清楚的认识和掌握.本文将对RAID技术进行介绍和总结,以期能尽量阐明其概念. RAI ...

  6. RAID的简单介绍

    该文章全部复制转载于:http://blog.jobbole.com/83808/,只为做笔记供自己查看 简介 RAID是一个我们经常能见到的名词.但却因为很少能在实际环境中体验,所以很难对其原理 能 ...

  7. Streaming data from Oracle using Oracle GoldenGate and Kafka Connect

    This is a guest blog from Robin Moffatt. Robin Moffatt is Head of R&D (Europe) at Rittman Mead, ...

  8. Ninja - chromium核心构建工具

    转自:http://guiquanz.me/2014/07/28/a_intro_to_Ninja/ Ninja - chromium核心构建工具Jul 28, 2014 [在线编辑] 缘由 经过上次 ...

  9. [转]RAID技术介绍和总结

    以下内容转自伯乐在线:http://blog.jobbole.com/83808/ 原文出处: 涯余(@若东临于沧海) ---------------------------------------- ...

随机推荐

  1. Mac环境下用Java(Sikuli+Robot)实现页游自动化

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Sikulix(以前叫Sikuli)在Mac电脑的环境配置步骤如下: 1.从官网上下载Sikuli ...

  2. sql中decode(...)函数的用法

    相当于if语句 decode函数比较1个参数时 SELECT ID,DECODE(inParam,'beComparedParam','值1' ,'值2') name FROM bank #如果第一个 ...

  3. CentOS安装zookeeper

    1.zookeeper是个什么玩意? 顾名思义zookeeper就是动物园管理员,他是用来管hadoop(大象).Hive(蜜蜂).pig(小猪)的管理员, Apache Hbase和 Apache  ...

  4. mysql分库分表

    1.分库分表 很明显,一个主表(也就是很重要的表,例如用户表)无限制的增长势必严重影响性能,分库与分表是一个很不错的解决途径,也就是性能优化途径,现在的案例是我们有一个1000多万条记录的用户表mem ...

  5. Android 程序打包和安装过程

    APP程序打包与安装的流程: APP的安装过程:

  6. 查看博客模板的css代码

    1.可以去模板列表里选择一个模板 http://www.cnblogs.com/Skins.aspx 目前使用的模板是http://www.cnblogs.com/SkinUser.aspx?Skin ...

  7. 选择屏幕(Selection Screen)

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  8. js实现页面传值

    今天做东西用到,在网上查到了这样的一种方法,学习学习: 来源:http://bbs.csdn.net/topics/310229114 Page1: <!DOCTYPE html PUBLIC ...

  9. iOS - OC NSTimeZone 时区

    前言 @interface NSTimeZone : NSObject <NSCopying, NSSecureCoding> NSTimeZone 表示时区信息. 1.NSTimeZon ...

  10. Python学习(22)python网络编程

    Python 网络编程 Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的 ...