Skip to main content

CLI endpoint to handle (ASP encoded) graphs

Project description

Phasme

Graph with ASP made easy.

Use cases

Write an ASP graph into gexf

phasme convert data.lp target.gexf

Rewrite a gml graph with normalized node names

phasme convert data.gml --normalized

Extract the biggest cc, write it anonymized in gml

phasme split data.lp --biggest-first "data_cc.lp" --slice 0 1
phasme convert data_cc_1.lp target.gml --anonymized

Generate a small world graph in gml

phasme generate data.gml erdos_renyi_graph n=100 p=0.01

Packaging

pip install phasme

Will also populate your env with the executable phasme, enabling access to the CLI.

CLI commands

CLI provides access to higher level routines.

  • split: split by connected component.
  • info: give info about given graph.
  • convert: rewrite, anonymize, normalize or convert the graph to (clean) ASP or standard format.
  • generate: generate a graph using a given generation method.

Other examples

# split a graph by cc
python -m phasme split data.lp -o "data_{}.lp"

# get infos
python -m phasme infos data.lp --graph-properties

# there is a shitload of options
python -m phasme infos --help

# conversions between formats
python -m phasme convert data.lp data.gml --anonymize

# generation of new graphs to play with
python -m phasme generate graph.gml powerlaw_cluster_graph n=5 m=2 p=0.01

# ready-to-draw tikz visualization of ASP graph
python -m phasme convert data.lp graph-in-latex-tikz.tex

# randomize a graph, keeping the same degree distribution, using switching method
python -m phasme randomize data.lp randomized-graph.gml

Changelog

  • 0.0.14
  • 0.0.13
    • randomize: --per-cc option to run it on each connected component independantly
  • 0.0.12
    • new subcommand: randomize, to build a random graph based on another
    • new subcommand: extract, to extract subgraphs based on their nodes
    • convert: new output format: latex/tikz
    • infos: give infos on articulation points
    • infos: indicate number of self loops, if any, or give property 'no loop'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phasme-0.0.16.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phasme-0.0.16-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file phasme-0.0.16.tar.gz.

File metadata

  • Download URL: phasme-0.0.16.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6

File hashes

Hashes for phasme-0.0.16.tar.gz
Algorithm Hash digest
SHA256 d9dbbbac1db400755475fb1def2763e6517e5e1ba0fa3df85693958b3453de13
MD5 b4c753e4be10999b21b800fc219f7563
BLAKE2b-256 09e1693f3db4080d8a93b5ccf949bae7c1d01c1ece033ff8c9a1b7fa25eb7472

See more details on using hashes here.

File details

Details for the file phasme-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: phasme-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6

File hashes

Hashes for phasme-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 5472b3aa2dee77a03c702badbff420acde532c796599c08ced377c898346310e
MD5 942be481c5e25a22de519de3156e1d13
BLAKE2b-256 2a9b85807455b574c1a6e4f44b3178a5869979ba6664e535f1cfa637ad914c19

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page