{"id":13485412,"url":"https://github.com/gvegayon/rgexf","last_synced_at":"2025-04-09T14:09:11.242Z","repository":{"id":56934693,"uuid":"48066683","full_name":"gvegayon/rgexf","owner":"gvegayon","description":"Create, read and write GEXF (Graph Exchange XML Format) graph files (used in Gephi and others) in R. ","archived":false,"fork":false,"pushed_at":"2024-10-18T22:56:53.000Z","size":6218,"stargazers_count":27,"open_issues_count":10,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-02T08:38:44.399Z","etag":null,"topics":["gephi","gexf","gexf-graph-files","r","rpackage","social-network","xml"],"latest_commit_sha":null,"homepage":"https://gvegayon.github.io/rgexf","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gvegayon.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"gvegayon","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2015-12-15T20:16:49.000Z","updated_at":"2024-10-18T22:56:06.000Z","dependencies_parsed_at":"2022-08-21T05:20:59.102Z","dependency_job_id":"30c15c11-ace3-4246-917e-d21fc382c1e0","html_url":"https://github.com/gvegayon/rgexf","commit_stats":{"total_commits":184,"total_committers":8,"mean_commits":23.0,"dds":"0.15760869565217395","last_synced_commit":"5c96d097ddf972f9ef77be750bc884a8408f428a"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gvegayon%2Frgexf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gvegayon%2Frgexf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gvegayon%2Frgexf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gvegayon%2Frgexf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gvegayon","download_url":"https://codeload.github.com/gvegayon/rgexf/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248054199,"owners_count":21039952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gephi","gexf","gexf-graph-files","r","rpackage","social-network","xml"],"created_at":"2024-07-31T18:00:21.930Z","updated_at":"2025-04-09T14:09:11.188Z","avatar_url":"https://github.com/gvegayon.png","language":"JavaScript","funding_links":["https://github.com/sponsors/gvegayon"],"categories":["Visualisierungen","JavaScript"],"sub_categories":["Network graphs"],"readme":"\n\n[![CRAN_Status_Badge](https://www.r-pkg.org/badges/version/rgexf)](https://cran.r-project.org/package=rgexf)\n[![Downloads](https://cranlogs.r-pkg.org/badges/rgexf)](https://cran.r-project.org/package=rgexf)\n[![Downloads](https://cranlogs.r-pkg.org/badges/grand-total/rgexf)](https://cran.r-project.org/package=rgexf)\n[![R\nCI](https://github.com/gvegayon/rgexf/actions/workflows/ci.yml/badge.svg)](https://github.com/gvegayon/rgexf/actions/workflows/ci.yml)\n[![rgexf\nwebsite](https://github.com/gvegayon/rgexf/actions/workflows/website.yml/badge.svg)](https://github.com/gvegayon/rgexf/actions/workflows/website.yml)\n[![Coverage\nStatus](https://img.shields.io/codecov/c/github/gvegayon/rgexf/master.svg)](https://app.codecov.io/github/gvegayon/rgexf?branch=master)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.03456/status.svg)](https://doi.org/10.21105/joss.03456)\n[![Sponsor](https://img.shields.io/badge/-Sponsor-fafbfc?logo=GitHub%20Sponsors.png)](https://github.com/sponsors/gvegayon)\n\n# rgexf: Build, Import and Export GEXF Graph Files \u003cimg src=\"man/figures/logo.svg\" align=\"right\" height=\"200\"/\u003e\n\nThe first R package to work with GEXF graph files (used in Gephi and\nothers). `rgexf` allows reading and writing graph files, including:\n\n1.  Nodes/edges attributes,\n\n2.  GEXF viz attributes (such as color, size, and position),\n\n3.  Network dynamics (for both edges and nodes, including spells) and\n\n4.  Edges weighting.\n\nUsers can build/handle graphs element-by-element or through data-frames,\nvisualize the graph on a web browser through ~~sigmajs javascript~~\n[gexf-js](https://github.com/raphv/gexf-js) library and interact with\nthe igraph package.\n\n# Changes in rgexf version 0.16.3 (2024-06-27)\n\n- Dynamically loaded components in the Rd files were removed to comply\n  with new CRAN policies.\n\nMore in the [NEWS.md](NEWS.md) file.\n\n# Installation\n\nTo install the latest version of `rgexf`, you can use `devtools`\n\n``` r\nlibrary(devtools)\ninstall_github(\"gvegayon/rgexf\")\n```\n\nThe more stable (but old) version of `rgexf` can be found on CRAN too:\n\n    install.packages(\"rgexf\")\n\n# Citation\n\n``` r\ncitation(package=\"rgexf\")\n```\n\n    To cite rgexf in publications use the following paper:\n\n      Vega Yon G (2021). \"Building, Importing, and Exporting GEXF Graph\n      Files with rgexf.\" _Journal of Open Source Software_, *6*, 3456.\n      doi:10.21105/joss.03456 \u003chttps://doi.org/10.21105/joss.03456\u003e,\n      \u003chttps://doi.org/10.21105/joss.03456\u003e.\n\n    And the actual R package:\n\n      Vega Yon G, Fábrega Lacoa J, Kunst J (????). _netdiffuseR: Build,\n      Import and Export GEXF Graph Files_. doi:10.5281/zenodo.5182708\n      \u003chttps://doi.org/10.5281/zenodo.5182708\u003e, R package version 0.16.3,\n      \u003chttps://github.com/gvegayon/rgexf\u003e.\n\n    To see these entries in BibTeX format, use 'print(\u003ccitation\u003e,\n    bibtex=TRUE)', 'toBibtex(.)', or set\n    'options(citation.bibtex.max=999)'.\n\n# Examples\n\n## Example 1: Importing GEXF files\n\nWe can use the `read.gexf` function to read GEXF files into R:\n\n``` r\n# Loading the package\nlibrary(rgexf)\n\ng \u003c- system.file(\"gexf-graphs/lesmiserables.gexf\", package=\"rgexf\")\ng \u003c- read.gexf(g)\nhead(g) # Taking a look at the first handful\n```\n\n    \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n    \u003cgexf xmlns=\"http://www.gexf.net/1.3\" xmlns:viz=\"http://www.gexf.net/1.3/viz\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" version=\"1.3\" xsi:schemaLocation=\"http://www.gexf.net/1.3 http://www.gexf.net/1.3/gexf.xsd\"\u003e\n      \u003cmeta lastmodifieddate=\"2016-11-09\"\u003e\n        \u003ccreator\u003eGephi 0.9\u003c/creator\u003e\n        \u003cdescription/\u003e\n      \u003c/meta\u003e\n      \u003cgraph defaultedgetype=\"undirected\" mode=\"static\"\u003e\n        \u003cattributes class=\"node\" mode=\"static\"\u003e\n          \u003cattribute id=\"modularity_class\" title=\"Modularity Class\" type=\"integer\"/\u003e\n        \u003c/attributes\u003e\n        \u003cnodes\u003e\n          \u003cnode id=\"11\" label=\"Valjean\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"1\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"100.0\"/\u003e\n            \u003cviz:position x=\"-87.93029\" y=\"6.8120565\"/\u003e\n            \u003cviz:color r=\"245\" g=\"91\" b=\"91\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"48\" label=\"Gavroche\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"8\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"61.600006\"/\u003e\n            \u003cviz:position x=\"387.89572\" y=\"-110.462326\"/\u003e\n            \u003cviz:color r=\"91\" g=\"245\" b=\"91\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"55\" label=\"Marius\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"6\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"53.37143\"/\u003e\n            \u003cviz:position x=\"206.44687\" y=\"13.805411\"/\u003e\n            \u003cviz:color r=\"194\" g=\"91\" b=\"245\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"27\" label=\"Javert\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"7\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"47.88571\"/\u003e\n            \u003cviz:position x=\"-81.46074\" y=\"204.20204\"/\u003e\n            \u003cviz:color r=\"91\" g=\"245\" b=\"194\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"25\" label=\"Thenardier\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"7\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"45.142853\"/\u003e\n            \u003cviz:position x=\"82.80825\" y=\"203.1144\"/\u003e\n            \u003cviz:color r=\"91\" g=\"245\" b=\"194\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"23\" label=\"Fantine\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"modularity_class\" value=\"2\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:size value=\"42.4\"/\u003e\n            \u003cviz:position x=\"-313.42786\" y=\"289.44803\"/\u003e\n            \u003cviz:color r=\"91\" g=\"194\" b=\"245\"/\u003e\n          \u003c/node\u003e\n                ...\n         \u003c/nodes\u003e\n        \u003cedges\u003e\n          \u003cedge id=\"0\" source=\"1\" target=\"0\"/\u003e\n          \u003cedge id=\"1\" source=\"2\" target=\"0\" weight=\"8.0\"/\u003e\n          \u003cedge id=\"2\" source=\"3\" target=\"0\" weight=\"10.0\"/\u003e\n          \u003cedge id=\"3\" source=\"3\" target=\"2\" weight=\"6.0\"/\u003e\n          \u003cedge id=\"4\" source=\"4\" target=\"0\"/\u003e\n          \u003cedge id=\"5\" source=\"5\" target=\"0\"/\u003e\n                ...\n         \u003c/edges\u003e\n      \u003c/graph\u003e\n    \u003c/gexf\u003e\n\nMoreover, we can use the `gexf.to.igraph()` function to convert the\n`gexf` object into an `igraph` object:\n\n``` r\nlibrary(igraph)\n```\n\n\n    Attaching package: 'igraph'\n\n    The following objects are masked from 'package:stats':\n\n        decompose, spectrum\n\n    The following object is masked from 'package:base':\n\n        union\n\n``` r\nig \u003c- gexf.to.igraph(g)\n\nop \u003c- par(mai = rep(0, 4)) # Making room\nplot(ig)\n```\n\n![](man/figures/igraph-1.png)\n\n``` r\npar(op)\n```\n\nUsing the `plot.gexf` method–which uses the `gexf-js` JavaScript\nlibrary–results in a Web visualization of the graph, like this:\n\n``` r\nplot(g)\n```\n\n![](inst/gexf-graphs/lesmiserables.png)\n\nA live version of the figure is available\n[here](https://gvegayon.github.io/rgexf/lesmiserables/).\n\n## Example 2: Static net\n\n``` r\n# Creating a group of individuals and their relations\npeople \u003c- data.frame(matrix(c(1:4, 'juan', 'pedro', 'matthew', 'carlos'),ncol=2))\npeople\n```\n\n      X1      X2\n    1  1    juan\n    2  2   pedro\n    3  3 matthew\n    4  4  carlos\n\n``` r\n# Defining the relations structure\nrelations \u003c- data.frame(matrix(c(1,4,1,2,1,3,2,3,3,4,4,2), ncol=2, byrow=T))\nrelations\n```\n\n      X1 X2\n    1  1  4\n    2  1  2\n    3  1  3\n    4  2  3\n    5  3  4\n    6  4  2\n\n``` r\n# Getting things done\nwrite.gexf(people, relations)\n```\n\n    \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n    \u003cgexf xmlns=\"http://www.gexf.net/1.3\" xmlns:viz=\"http://www.gexf.net/1.3/viz\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.gexf.net/1.3 http://www.gexf.net/1.3/gexf.xsd\" version=\"1.3\"\u003e\n      \u003cmeta lastmodifieddate=\"2024-10-18\"\u003e\n        \u003ccreator\u003eNodosChile\u003c/creator\u003e\n        \u003cdescription\u003eA GEXF file written in R with \"rgexf\"\u003c/description\u003e\n        \u003ckeywords\u003eGEXF, NodosChile, R, rgexf, Gephi\u003c/keywords\u003e\n      \u003c/meta\u003e\n      \u003cgraph mode=\"static\" defaultedgetype=\"undirected\"\u003e\n        \u003cnodes\u003e\n          \u003cnode id=\"1\" label=\"juan\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"-250\" y=\"250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"2\" label=\"pedro\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"250\" y=\"-250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"3\" label=\"matthew\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"63.1149047588788\" y=\"130.10577758682\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"4\" label=\"carlos\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"58.513361107523\" y=\"223.719394024583\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n        \u003c/nodes\u003e\n        \u003cedges\u003e\n          \u003cedge id=\"0\" source=\"1\" target=\"4\" weight=\"1\"/\u003e\n          \u003cedge id=\"1\" source=\"1\" target=\"2\" weight=\"1\"/\u003e\n          \u003cedge id=\"2\" source=\"1\" target=\"3\" weight=\"1\"/\u003e\n          \u003cedge id=\"3\" source=\"2\" target=\"3\" weight=\"1\"/\u003e\n          \u003cedge id=\"4\" source=\"3\" target=\"4\" weight=\"1\"/\u003e\n          \u003cedge id=\"5\" source=\"4\" target=\"2\" weight=\"1\"/\u003e\n        \u003c/edges\u003e\n      \u003c/graph\u003e\n    \u003c/gexf\u003e\n     \n\n## Example 3: Dynamic net\n\n``` r\n# Defining the dynamic structure, note that there are some nodes that have NA at the end.\ntime\u003c-matrix(c(10.0,13.0,2.0,2.0,12.0,rep(NA,3)), nrow=4, ncol=2)\ntime\n```\n\n         [,1] [,2]\n    [1,]   10   12\n    [2,]   13   NA\n    [3,]    2   NA\n    [4,]    2   NA\n\n``` r\n# Getting things done\nwrite.gexf(people, relations, nodeDynamic=time)\n```\n\n    \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n    \u003cgexf xmlns=\"http://www.gexf.net/1.3\" xmlns:viz=\"http://www.gexf.net/1.3/viz\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.gexf.net/1.3 http://www.gexf.net/1.3/gexf.xsd\" version=\"1.3\"\u003e\n      \u003cmeta lastmodifieddate=\"2024-10-18\"\u003e\n        \u003ccreator\u003eNodosChile\u003c/creator\u003e\n        \u003cdescription\u003eA GEXF file written in R with \"rgexf\"\u003c/description\u003e\n        \u003ckeywords\u003eGEXF, NodosChile, R, rgexf, Gephi\u003c/keywords\u003e\n      \u003c/meta\u003e\n      \u003cgraph mode=\"dynamic\" start=\"2\" end=\"13\" timeformat=\"double\" defaultedgetype=\"undirected\"\u003e\n        \u003cnodes\u003e\n          \u003cnode id=\"1\" label=\"juan\" start=\"10\" end=\"12\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"-135.963081408174\" y=\"36.8870363894154\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"2\" label=\"pedro\" start=\"13\" end=\"13\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"192.669458692808\" y=\"250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"3\" label=\"matthew\" start=\"2\" end=\"13\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"-250\" y=\"-250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"4\" label=\"carlos\" start=\"2\" end=\"13\"\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"250\" y=\"219.893132902228\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n        \u003c/nodes\u003e\n        \u003cedges\u003e\n          \u003cedge id=\"0\" source=\"1\" target=\"4\" weight=\"1\"/\u003e\n          \u003cedge id=\"1\" source=\"1\" target=\"2\" weight=\"1\"/\u003e\n          \u003cedge id=\"2\" source=\"1\" target=\"3\" weight=\"1\"/\u003e\n          \u003cedge id=\"3\" source=\"2\" target=\"3\" weight=\"1\"/\u003e\n          \u003cedge id=\"4\" source=\"3\" target=\"4\" weight=\"1\"/\u003e\n          \u003cedge id=\"5\" source=\"4\" target=\"2\" weight=\"1\"/\u003e\n        \u003c/edges\u003e\n      \u003c/graph\u003e\n    \u003c/gexf\u003e\n     \n\n## Example 4: More complex… Dynamic graph with attributes both for nodes and edges\n\nFirst, we define dynamics\n\n``` r\ntime.nodes\u003c-matrix(c(10.0,13.0,2.0,2.0,12.0,rep(NA,3)), nrow=4, ncol=2)\ntime.nodes\n```\n\n         [,1] [,2]\n    [1,]   10   12\n    [2,]   13   NA\n    [3,]    2   NA\n    [4,]    2   NA\n\n``` r\ntime.edges\u003c-matrix(c(10.0,13.0,2.0,2.0,12.0,1,5,rep(NA,5)), nrow=6, ncol=2)\ntime.edges\n```\n\n         [,1] [,2]\n    [1,]   10    5\n    [2,]   13   NA\n    [3,]    2   NA\n    [4,]    2   NA\n    [5,]   12   NA\n    [6,]    1   NA\n\nNow we define the attribute values\n\n``` r\n# Defining a data frame of attributes for nodes and edges\nnode.att \u003c- data.frame(letrafavorita=letters[1:4], numbers=1:4, stringsAsFactors=F)\nnode.att\n```\n\n      letrafavorita numbers\n    1             a       1\n    2             b       2\n    3             c       3\n    4             d       4\n\n``` r\nedge.att \u003c- data.frame(letrafavorita=letters[1:6], numbers=1:6, stringsAsFactors=F)\nedge.att\n```\n\n      letrafavorita numbers\n    1             a       1\n    2             b       2\n    3             c       3\n    4             d       4\n    5             e       5\n    6             f       6\n\n``` r\n# Getting the things done\nwrite.gexf(nodes=people, edges=relations, edgeDynamic=time.edges,\n           edgesAtt=edge.att, nodeDynamic=time.nodes, nodesAtt=node.att)\n```\n\n    \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n    \u003cgexf xmlns=\"http://www.gexf.net/1.3\" xmlns:viz=\"http://www.gexf.net/1.3/viz\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.gexf.net/1.3 http://www.gexf.net/1.3/gexf.xsd\" version=\"1.3\"\u003e\n      \u003cmeta lastmodifieddate=\"2024-10-18\"\u003e\n        \u003ccreator\u003eNodosChile\u003c/creator\u003e\n        \u003cdescription\u003eA GEXF file written in R with \"rgexf\"\u003c/description\u003e\n        \u003ckeywords\u003eGEXF, NodosChile, R, rgexf, Gephi\u003c/keywords\u003e\n      \u003c/meta\u003e\n      \u003cgraph mode=\"dynamic\" start=\"1\" end=\"13\" timeformat=\"double\" defaultedgetype=\"undirected\"\u003e\n        \u003cattributes class=\"node\" mode=\"static\"\u003e\n          \u003cattribute id=\"att1\" title=\"letrafavorita\" type=\"string\"/\u003e\n          \u003cattribute id=\"att2\" title=\"numbers\" type=\"integer\"/\u003e\n        \u003c/attributes\u003e\n        \u003cattributes class=\"edge\" mode=\"static\"\u003e\n          \u003cattribute id=\"att1\" title=\"letrafavorita\" type=\"string\"/\u003e\n          \u003cattribute id=\"att2\" title=\"numbers\" type=\"integer\"/\u003e\n        \u003c/attributes\u003e\n        \u003cnodes\u003e\n          \u003cnode id=\"1\" label=\"juan\" start=\"10\" end=\"12\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"a\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"1\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"250\" y=\"51.7457176988725\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"2\" label=\"pedro\" start=\"13\" end=\"13\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"b\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"2\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"-67.5391867908165\" y=\"-143.917625792549\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"3\" label=\"matthew\" start=\"2\" end=\"13\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"c\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"3\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"67.4998253464631\" y=\"-250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n          \u003cnode id=\"4\" label=\"carlos\" start=\"2\" end=\"13\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"d\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"4\"/\u003e\n            \u003c/attvalues\u003e\n            \u003cviz:color r=\"255\" g=\"99\" b=\"71\" a=\"1\"/\u003e\n            \u003cviz:position x=\"-250\" y=\"250\" z=\"0\"/\u003e\n            \u003cviz:size value=\"125\"/\u003e\n          \u003c/node\u003e\n        \u003c/nodes\u003e\n        \u003cedges\u003e\n          \u003cedge id=\"0\" source=\"1\" target=\"4\" start=\"10\" end=\"5\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"a\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"1\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n          \u003cedge id=\"1\" source=\"1\" target=\"2\" start=\"13\" end=\"13\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"b\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"2\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n          \u003cedge id=\"2\" source=\"1\" target=\"3\" start=\"2\" end=\"13\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"c\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"3\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n          \u003cedge id=\"3\" source=\"2\" target=\"3\" start=\"2\" end=\"13\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"d\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"4\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n          \u003cedge id=\"4\" source=\"3\" target=\"4\" start=\"12\" end=\"13\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"e\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"5\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n          \u003cedge id=\"5\" source=\"4\" target=\"2\" start=\"1\" end=\"13\" weight=\"1\"\u003e\n            \u003cattvalues\u003e\n              \u003cattvalue for=\"att1\" value=\"f\"/\u003e\n              \u003cattvalue for=\"att2\" value=\"6\"/\u003e\n            \u003c/attvalues\u003e\n          \u003c/edge\u003e\n        \u003c/edges\u003e\n      \u003c/graph\u003e\n    \u003c/gexf\u003e\n     \n\n# Code of Conduct\n\nWe welcome contributions to `rgexf`. Whether reporting a bug, starting a\ndiscussion by asking a question, or proposing/requesting a new feature,\nplease go by creating a new issue\n[here](https://github.com/gvegayon/rgexf/issues) so that we can talk\nabout it.\n\nPlease note that the rgexf project is released with a [Contributor Code\nof\nConduct](https://contributor-covenant.org/version/2/0/CODE_OF_CONDUCT.html).\nBy contributing to this project, you agree to abide by its terms\n\n# Session info\n\n``` r\ndevtools::session_info()\n```\n\n    ─ Session info ───────────────────────────────────────────────────────────────\n     setting  value\n     version  R version 4.4.1 (2024-06-14)\n     os       macOS 15.0.1\n     system   aarch64, darwin23.4.0\n     ui       unknown\n     language (EN)\n     collate  en_US.UTF-8\n     ctype    en_US.UTF-8\n     tz       America/Denver\n     date     2024-10-18\n     pandoc   3.2.1 @ /opt/homebrew/bin/ (via rmarkdown)\n\n    ─ Packages ───────────────────────────────────────────────────────────────────\n     package     * version   date (UTC) lib source\n     cachem        1.1.0     2024-05-16 [1] CRAN (R 4.4.1)\n     cli           3.6.3     2024-06-21 [1] CRAN (R 4.4.1)\n     devtools      2.4.5     2022-10-11 [1] CRAN (R 4.4.1)\n     digest        0.6.37    2024-08-19 [1] RSPM (R 4.4.1)\n     ellipsis      0.3.2     2021-04-29 [1] CRAN (R 4.4.1)\n     evaluate      1.0.0     2024-09-17 [1] RSPM (R 4.4.1)\n     fastmap       1.2.0     2024-05-15 [1] CRAN (R 4.4.1)\n     fs            1.6.4     2024-04-25 [1] CRAN (R 4.4.1)\n     glue          1.7.0     2024-01-09 [1] CRAN (R 4.4.1)\n     htmltools     0.5.8.1   2024-04-04 [1] CRAN (R 4.4.1)\n     htmlwidgets   1.6.4     2023-12-06 [1] CRAN (R 4.4.1)\n     httpuv        1.6.15    2024-03-26 [1] CRAN (R 4.4.1)\n     igraph      * 2.0.3     2024-03-13 [1] RSPM (R 4.4.1)\n     jsonlite      1.8.9     2024-09-20 [1] RSPM (R 4.4.1)\n     knitr         1.47      2024-05-29 [1] CRAN (R 4.4.1)\n     later         1.3.2     2023-12-06 [1] CRAN (R 4.4.1)\n     lifecycle     1.0.4     2023-11-07 [1] CRAN (R 4.4.1)\n     magrittr      2.0.3     2022-03-30 [1] CRAN (R 4.4.1)\n     memoise       2.0.1     2021-11-26 [1] CRAN (R 4.4.1)\n     mime          0.12      2021-09-28 [1] CRAN (R 4.4.1)\n     miniUI        0.1.1.1   2018-05-18 [1] CRAN (R 4.4.1)\n     pkgbuild      1.4.4     2024-03-17 [1] CRAN (R 4.4.1)\n     pkgconfig     2.0.3     2019-09-22 [1] CRAN (R 4.4.1)\n     pkgload       1.4.0     2024-06-28 [1] CRAN (R 4.4.1)\n     profvis       0.3.8     2023-05-02 [1] CRAN (R 4.4.1)\n     promises      1.3.0     2024-04-05 [1] CRAN (R 4.4.1)\n     purrr         1.0.2     2023-08-10 [1] CRAN (R 4.4.1)\n     R6            2.5.1     2021-08-19 [1] CRAN (R 4.4.1)\n     Rcpp          1.0.13    2024-07-17 [1] RSPM (R 4.4.1)\n     remotes       2.5.0     2024-03-17 [1] CRAN (R 4.4.1)\n     rgexf       * 0.16.3    2024-10-18 [1] local\n     rlang         1.1.4     2024-06-04 [1] CRAN (R 4.4.1)\n     rmarkdown     2.27      2024-05-17 [1] CRAN (R 4.4.1)\n     servr         0.30      2024-03-23 [1] CRAN (R 4.4.1)\n     sessioninfo   1.2.2     2021-12-06 [1] CRAN (R 4.4.1)\n     shiny         1.8.1.1   2024-04-02 [1] CRAN (R 4.4.1)\n     stringi       1.8.4     2024-05-06 [1] CRAN (R 4.4.1)\n     stringr       1.5.1     2023-11-14 [1] CRAN (R 4.4.1)\n     urlchecker    1.0.1     2021-11-30 [1] CRAN (R 4.4.1)\n     usethis       2.2.3     2024-02-19 [1] CRAN (R 4.4.1)\n     vctrs         0.6.5     2023-12-01 [1] CRAN (R 4.4.1)\n     xfun          0.45      2024-06-16 [1] CRAN (R 4.4.1)\n     XML           3.99-0.17 2024-06-25 [1] CRAN (R 4.4.1)\n     xtable        1.8-4     2019-04-21 [1] CRAN (R 4.4.1)\n     yaml          2.3.8     2023-12-11 [1] CRAN (R 4.4.1)\n\n     [1] /opt/homebrew/lib/R/4.4/site-library\n     [2] /opt/homebrew/Cellar/r/4.4.1/lib/R/library\n\n    ──────────────────────────────────────────────────────────────────────────────\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgvegayon%2Frgexf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgvegayon%2Frgexf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgvegayon%2Frgexf/lists"}