{"id":16571869,"url":"https://github.com/hrbrmstr/hilbertv4","last_synced_at":"2026-04-26T23:31:41.717Z","repository":{"id":141238276,"uuid":"120301403","full_name":"hrbrmstr/hilbertv4","owner":"hrbrmstr","description":"Create and Annotate 'Hilbert Curve' 'IPv4' Heatmaps in R","archived":false,"fork":false,"pushed_at":"2018-03-02T18:14:27.000Z","size":4404,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-04T22:13:54.388Z","etag":null,"topics":["data-visualization","ggplot2","hilbert-curve","ipv4","ipv4-heatmap","r","rstats"],"latest_commit_sha":null,"homepage":null,"language":"C++","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/hrbrmstr.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2018-02-05T12:25:26.000Z","updated_at":"2025-03-22T11:10:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"153adb0c-bd04-460c-b3e0-6334f63f496b","html_url":"https://github.com/hrbrmstr/hilbertv4","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hrbrmstr/hilbertv4","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fhilbertv4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fhilbertv4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fhilbertv4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fhilbertv4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hrbrmstr","download_url":"https://codeload.github.com/hrbrmstr/hilbertv4/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fhilbertv4/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32317163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"ssl_error","status_checked_at":"2026-04-26T23:26:25.802Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["data-visualization","ggplot2","hilbert-curve","ipv4","ipv4-heatmap","r","rstats"],"created_at":"2024-10-11T21:25:31.438Z","updated_at":"2026-04-26T23:31:41.700Z","avatar_url":"https://github.com/hrbrmstr.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: rmarkdown::github_document\n---\n\n# hilbertv4\n\nCreate and Annotate 'Hilbert Curve' 'IPv4' Heatmaps\n\n## Description\n\nA 12th-order 'Hilbert Curve' can be used to represent the entire 'IPv4' address space with each pixel being one 'Class C' (256 nodes). Tools are provided to tranform sets of 'IPv4' addresses into 'Hilbert Curve' position values and, ultimately, 'ggplot2' objects.\n\nLocating a particular IP address along the curve can be confusing at first. Here is what a 2nd-order Hilbert curve looks like:\n\n    0---1   14--15\n        |   |\n    3---2   13--12\n    |            |\n    4   7---8   11\n    |   |   |    |\n    5---6   9---10\n\n## What's Inside The Tin\n\nThe following functions are implemented:\n\n- `CoordHilbertV4`:\tggplot2 'Coord' for Hilbert IPv4 heatmaps\n- `coord_hilbert_v4`:\tggplot2 'Coord' for Hilbert IPv4 heatmaps\n- `hilbertv4`:\tCreate and Annotate 'Hilbert Curve' 'IPv4' Heatmaps\n- `StatHilbertV4`:\tggplot2 'Stat' for Hilbert IPv4 heatmaps\n- `stat_hilbert_v4`:\tggplot2 'Stat' for Hilbert IPv4 heatmaps\n- `theme_hilbert_v4`:\t\"Map\" theme for Hilbert IPv4 maps\n\n## Installation\n\n```{r eval=FALSE}\ndevtools::install_github(\"hrbrmstr/hilbertv4\")\n```\n\n```{r message=FALSE, warning=FALSE, error=FALSE, include=FALSE}\noptions(width=120)\n```\n\n## Usage\n\n```{r message=FALSE, warning=FALSE, error=FALSE}\nlibrary(hilbertv4)\nlibrary(ggplot2)\n\n# current verison\npackageVersion(\"hilbertv4\")\n```\n\n```{r}\nip_df \u003c- readRDS(\"sample/ips.rds\")\n\nggplot(ip_df, aes(ip=ip)) +\n  stat_hilbert_v4(bpp=16) +\n  coord_hilbert_v4(bpp=16) +\n  viridis::scale_fill_viridis(name=\"IPv4 count per pixel\", trans=\"log2\") +\n  theme_hilbert_v4()\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrbrmstr%2Fhilbertv4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhrbrmstr%2Fhilbertv4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrbrmstr%2Fhilbertv4/lists"}