diff --git a/CITATION.cff b/CITATION.cff index f59fdb4d1..f8952464c 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -65,6 +65,6 @@ preferred-citation: start: 5162 title: "XGI: A Python package for higher-order interaction networks" type: article - url: "https://joss.theoj.org/papers/10.21105/joss.05162" + url: "https://doi.org/10.21105/joss.05162" volume: 8 title: "XGI: A Python package for higher-order interaction networks" \ No newline at end of file diff --git a/README.md b/README.md index eea809695..5f022b269 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ [![Test Status](https://github.com/xgi-org/xgi/workflows/test/badge.svg?branch=main)](https://github.com/xgi-org/xgi/actions?query=workflow%3A%22test%22) [![codecov](https://codecov.io/gh/xgi-org/xgi/branch/main/graph/badge.svg?token=BI6TX2WDSG)](https://codecov.io/gh/xgi-org/xgi) [![Good First Issue](https://img.shields.io/badge/contribute-Good%20First%20Issue-forest)](https://github.com/xgi-org/xgi/issues?q=is%3Aopen+is%3Aissue+label%3A%22Good+First+Issue%22) +[![DOI](https://joss.theoj.org/papers/10.21105/joss.05162/status.svg)](https://doi.org/10.21105/joss.03968) [![pyOpenSci](https://tinyurl.com/y22nb8up)](https://github.com/pyOpenSci/software-review/issues/115) * [**Source**](../../) @@ -85,7 +86,7 @@ Some concrete ways that you can get involved: ## How to Cite -We acknowledge the importance of good software to support research, and we note that research becomes more valuable when it is communicated effectively. To demonstrate the value of XGI, we ask that you cite XGI in your work. You can cite XGI either by going to our repository page [repository page](../../) (if you haven't already) and clicking the "cite this repository" button on the right sidebar (which will generate a citation in your preferred format) or by copying the following BibTeX entry: +We acknowledge the importance of good software to support research, and we note that research becomes more valuable when it is communicated effectively. To demonstrate the value of XGI, we ask that you cite the XGI [paper](https://doi.org/10.21105/joss.05162) in your work. You can cite XGI either by going to our repository page [repository page](../../) (if you haven't already) and clicking the "cite this repository" button on the right sidebar (which will generate a citation in your preferred format) or by copying the following BibTeX entry: ``` @article{Landry_XGI_2023, author = {Landry, Nicholas W. and Lucas, Maxime and Iacopini, Iacopo and Petri, Giovanni and Schwarze, Alice and Patania, Alice and Torres, Leo}, @@ -98,7 +99,7 @@ We acknowledge the importance of good software to support research, and we note volume = {8}, number = {85}, pages = {5162}, - url = {https://joss.theoj.org/papers/10.21105/joss.05162}, + url = {https://doi.org/10.21105/joss.05162}, } ``` @@ -114,11 +115,20 @@ The XGI package has been supported by NSF Grant 2121905, ["HNDS-I: Using Hypergr ## Other Resources This library may not meet your needs and if this is this case, consider checking out these other resources: -* [HyperNetX](https://pnnl.github.io/HyperNetX): A Python package for representing, analyzing, and visualizing hypergraphs. -* [Hypergraph Analysis Toolbox (HAT)](https://hypergraph-analysis-toolbox.readthedocs.io): A Python/Matlab package for hypergraph construction, visualization, and analysis (Especially for Pore-C data). + +**Julia** +* [HyperGraphs.jl](https://github.com/lpmdiaz/HyperGraphs.jl): A Julia package for representing, analyzing, and generating hypergraphs which may be oriented and weighted. +* [SimpleHypergraphs.jl](https://pszufe.github.io/SimpleHypergraphs.jl/v0.1): A Julia package for representing, analyzing, and generating hypergraphs. + +**Python** +* [EasyGraph](https://easy-graph.github.io/): A Python package for analyzing undirected and directed networks as well as hypergraphs. * [halp](http://murali-group.github.io/halp): A Python package with directed and undirected hypergraph implementations and several algorithms. +* [Hypergraph Analysis Toolbox (HAT)](https://hypergraph-analysis-toolbox.readthedocs.io): A Python/Matlab package for hypergraph construction, visualization, and analysis (Especially for Pore-C data). +* [Hypergraphx](https://hypergraphx.readthedocs.io): A Python for representing, analyzing, and visualizing hypergraphs. +* [HyperNetX](https://pnnl.github.io/HyperNetX): A Python package for representing, analyzing, and visualizing hypergraphs. +* [NetworkX](https://networkx.org): A Python package for representing, analyzing, and visualizing networks. * [Reticula](https://docs.reticula.network): A Python package wrapping C++ functions for representing, analyzing, and visualizing temporal and static graphs and hypergraphs. -* [SimpleHypergraphs.jl](https://pszufe.github.io/SimpleHypergraphs.jl/v0.1): A Julia package for representing, analyzing, and generating hypergraphs. -* [HyperGraphs.jl](https://github.com/lpmdiaz/HyperGraphs.jl): A Julia package for representing, analyzing, and generating hypergraphs which may be oriented and weighted. + + +**R** * [hyperG](https://cran.r-project.org/package=HyperG): An R package for storing and analyzing hypergraphs -* [NetworkX](https://networkx.org): A Python package for representing, analyzing, and visualizing networks. diff --git a/docs/source/_static/table.js b/docs/source/_static/table.js index 181b3d62e..4eeaf57dd 100644 --- a/docs/source/_static/table.js +++ b/docs/source/_static/table.js @@ -13,8 +13,7 @@ async function fetch_JSON_file(url) { } } - function create_table(json_data) { - const body = document.body; +function create_table(json_data) { const section = document.getElementById("network-statistics") const table = document.createElement('table'); const table_header = document.createElement('thead') @@ -22,7 +21,7 @@ async function fetch_JSON_file(url) { // Create header row const header_row = document.createElement('tr'); - const headers = ["Dataset", "|V|", "|E|", "|Eunique|", "smax"] + const headers = ["Dataset", "|V|", "|E|", "|E*|", "smax"] const header_attrs = ["num-nodes", "num-edges", "num-unique-edges", "max-edge-size"] for (const i in headers) { diff --git a/docs/source/api/convert.rst b/docs/source/api/convert.rst index 9e9bce812..61ecf6915 100644 --- a/docs/source/api/convert.rst +++ b/docs/source/api/convert.rst @@ -9,6 +9,7 @@ convert package ~xgi.convert.bipartite_edges ~xgi.convert.bipartite_graph + ~xgi.encapsulation_dag ~xgi.convert.graph ~xgi.convert.higher_order_network ~xgi.convert.hyperedges diff --git a/docs/source/api/convert/xgi.convert.encapsulation_dag.rst b/docs/source/api/convert/xgi.convert.encapsulation_dag.rst new file mode 100644 index 000000000..ba096704e --- /dev/null +++ b/docs/source/api/convert/xgi.convert.encapsulation_dag.rst @@ -0,0 +1,11 @@ +xgi.convert.encapsulation_dag +============================= + +.. currentmodule:: xgi.convert.encapsulation_dag + +.. automodule:: xgi.convert.encapsulation_dag + + .. rubric:: Functions + + .. autofunction:: to_encapsulation_dag + .. autofunction:: empirical_subsets_filter \ No newline at end of file diff --git a/docs/source/assets/images/Filtering_2024_Fig1.png b/docs/source/assets/images/Filtering_2024_Fig1.png new file mode 100644 index 000000000..e5fc00714 Binary files /dev/null and b/docs/source/assets/images/Filtering_2024_Fig1.png differ diff --git a/docs/source/contributors.rst b/docs/source/contributors.rst index 2d4111121..5597937e9 100644 --- a/docs/source/contributors.rst +++ b/docs/source/contributors.rst @@ -89,6 +89,13 @@ Contributors @acombretrenouard
++ + @aleable +
+@arnaudon
++ + @colltoaction +
+ ++ + @doabell +
+
`_)
- A visualization of the email-enron dataset with hyperedges of sizes 2 and 3 (all isolated nodes removed). The nodes are colored by their degree and their size proportional to the Clique motif Eigenvector Centrality.
.. figure:: assets/images/Simpliciality_2023_Fig3.png
:width: 400
+ :align: left
:alt: Image of a hypergraph with nodes colored by their simpliciality measures.
+
+ The local (A) simplicial fraction, (B) edit simpliciality, and (C) face edit simpliciality of the email-enron dataset filtered to include interactions of sizes 2 and 3. The colors of the histogram bars match the node colors on their corresponding network visualization. Nodes for which the local simpliciality is undefined are colored in grey. (Fig. 3 in `The simpliciality of higher-order networks More details on individual datasets are available at the XGI-DATA page. More details on individual datasets are available at the XGI-DATA page. In this table, |V| denotes the number of nodes, |E| denotes the number of edges, |E*| denotes the number of unique edges, and smax denotes the maximum edge size.