{"id":33187112,"url":"https://smin95.github.io/ggsem/","last_synced_at":"2025-11-25T18:00:43.974Z","repository":{"id":258758797,"uuid":"874835249","full_name":"smin95/ggsem","owner":"smin95","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-17T02:03:31.000Z","size":46277,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-22T04:40:25.652Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://smin95.github.io/ggsem/","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smin95.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-18T14:46:59.000Z","updated_at":"2025-03-21T04:14:58.000Z","dependencies_parsed_at":"2025-03-17T03:34:23.291Z","dependency_job_id":null,"html_url":"https://github.com/smin95/ggsem","commit_stats":null,"previous_names":["smin95/ggsem"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/smin95/ggsem","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smin95%2Fggsem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smin95%2Fggsem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smin95%2Fggsem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smin95%2Fggsem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smin95","download_url":"https://codeload.github.com/smin95/ggsem/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smin95%2Fggsem/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286079811,"owners_count":27282121,"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","status":"online","status_checked_at":"2025-11-25T02:00:05.816Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-11-16T05:00:30.372Z","updated_at":"2025-11-25T18:00:43.969Z","avatar_url":"https://github.com/smin95.png","language":"R","funding_links":[],"categories":["Data and models"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"man/figures/hex_code.png\" height=\"170px\" width=\"153px\" style=\"float: right; margin-top: 27px;\" align=\"right\"\u003e\n  \u003ch1 align=\"left\" style=\"font-size: 1.9em;\"\u003e\u003cstrong\u003eggsem\u003c/strong\u003e: An R Package for Interactive and Reproducible Visualizations of Networks and Structural Equation Modeling Diagrams\u003c/h1\u003e\n\u003c/p\u003e\n\n\n[![](http://cranlogs.r-pkg.org/badges/grand-total/ggsem?color=pink)](https://cran.r-project.org/package=ggsem)\n[![](https://img.shields.io/badge/devel%20version-0.2.4-black.svg)](https://github.com/smin95/ggsem) [![CRAN_Release_Badge](http://www.r-pkg.org/badges/version-ago/ggsem?color=green)](https://CRAN.R-project.org/package=ggsem) \n\nAuthor: Seung Hyun Min\n\n\n**ggsem** is a web-based application and an R package, enabling users to draw path diagrams for structural equation modeling (SEM) and networks interactively using the **ggplot2** engine.\n\nAs the core of the **ggsem** package, its web app (built with **Shiny**) provides an interface that allows extensive customization, and creates CSV outputs, which can then be used to recreate the figures either using the web app or in a typical ggplot2 workflow. This will be useful to generate reproducible figures.\n\nUnique features of this R package include options for users to draw gradient lines, gradient arrows, self-loop arrows, as well as interactively change the layout of nodes and edges.\nAlso, **ggsem** provides layouts of the nodes and edges from the **igraph** package for networks, understands the string input form in **laavan**'s syntax, and supports layouts from the **semPlot** package for SEM diagrams. \n\n**Coding is optional** as users can create high-quality figures of network and SEM diagrams from start to finish within the **ggsem** application.\n\nNevertheless, the outputs from **ggsem** can be recreated as a raw **ggplot** output in script-based workflow, allowing users to further modify the graphical output using other packages.\n\n\u003ca href=\"https://smin95.shinyapps.io/ggsem/\"\u003e\n    \u003cimg src=\"vignettes/layout1.png\" alt=\"layout1\" width=\"750\"\u003e\n\u003c/a\u003e\n\u0026nbsp;\u0026nbsp;\n\u003cimg src=\"vignettes/fig6f.png\" alt=\"fig6f\" width=\"640\"\u003e\n\nThe SEM diagram was created using data and a model without coding (see Chapter 6).\n\n\u003cimg src=\"vignettes/p4.png\" alt=\"p4\" width=\"640\"\u003e\n\nThe two networks were separately generated from the **ggsem** app, annotated with **ggplot2** functions, and combined with **patchwork** in script-based workflow (see Chapter 4).\n\n\n### Installation using RStudio\n\nThe stable version of **ggsem** can be installed using `install.packages()` from the Comprehensive R Archive Network (CRAN).\n\n```r\ninstall.packages(c(\"dplyr\", \"semPlot\")) # Required to run ggsem app locally\ninstall.packages(\"ggsem\")\n```\n\nThe examples on this website use the development version of the package, which can be directly downloaded using the code below:\n\n``` r\ninstall.packages(\"devtools\")\ndevtools::install_github('smin95/ggsem')\n```\n\n### Running the ggsem App \n\nThe **ggsem** app can be initiated online using the link: https://smin95.shinyapps.io/ggsem/. \n\nIt can also be started locally in RStudio:\n\n``` r\ninstall.packages(c(\"ggsem\", \"dplyr\", \"semPlot\"))\nggsem::ggsem()\n```\n\nTo access an updated tutorial (sample codes and figures) of the package, please visit https://smin95.github.io/ggsem/.\n\n\n### Disclosure\n\nThe creation of the package was in part inspired by this blog post: https://drsimonj.svbtle.com/ggsem-plot-sem-models-with-ggplot2.\n\n### Issues and contact\n\nIf you find any issues with **ggsem** (both application and package), please contact me via email (seung.min\\@mail.mcgill.ca).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/smin95.github.io%2Fggsem%2F","html_url":"https://awesome.ecosyste.ms/projects/smin95.github.io%2Fggsem%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/smin95.github.io%2Fggsem%2F/lists"}