https://github.com/jokergoo/spiralize
Visualize data on spirals
https://github.com/jokergoo/spiralize
Last synced: about 18 hours ago
JSON representation
Visualize data on spirals
- Host: GitHub
- URL: https://github.com/jokergoo/spiralize
- Owner: jokergoo
- License: other
- Created: 2021-06-14T10:10:49.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-15T07:08:29.000Z (8 months ago)
- Last Synced: 2025-02-13T21:14:12.634Z (8 days ago)
- Language: R
- Homepage: https://jokergoo.github.io/spiralize/
- Size: 191 MB
- Stars: 148
- Watchers: 6
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - jokergoo/spiralize - Visualize data on spirals (R)
README
# Visualize Data on Spirals
[](https://github.com/jokergoo/spiral/actions)
[](https://cran.r-project.org/web/packages/spiralize/index.html)
[](https://cran.r-project.org/web/packages/spiralize/index.html)## Features
The package **spiralize** visualizes data along an [Archimedean spiral](https://en.wikipedia.org/wiki/Archimedean_spiral).
It has two major advantages for visualization:1. It is able to visualize data with very long axis with high resolution.
2. It is efficient for time series data to reveal periodic patterns.## Documentation
https://jokergoo.github.io/spiralize/
## Citation
Zuguang Gu, et al., spiralize: an R package for Visualizing Data on Spirals, Bioinformatics, 2021. https://doi.org/10.1093/bioinformatics/btab778
## Install
The package is available on CRAN and can be installed by:
```r
install.packages("spiralize")
```If you want the latest version, install it directly from GitHub:
```r
library(devtools)
install_github("jokergoo/spiralize")
```## Usage
It includes three steps:
1. initialize the spiral,
2. add a track,
3. add graphics to the track.Step 2 and 3 can be applied multiple times to allow multiple-track visualization along the spiral.
The code for making spiral plot looks likes follows:
```r
library(spiralize)
spiral_initialize(...)
spiral_track(...)
spiral_points(...)
...
```## Graphics
Complex plots are baiscally constructed from simple graphics. Here there are following low-level graphics functions:
- `spiral_points()`
- `spiral_lines()`
- `spiral_rect()`
- `spiral_segments()`
- `spiral_polygon()`
- `spiral_bars()`
- `spiral_text()`
- `spiral_axis()`
- `spiral_yaxis()`
- `spiral_raster()`Particularlly, horizon chart is very suitable to put on the spiral, thus there is one function for this:
- `spiral_horizon()`
Spiral plot can also visualize dendrograms with large number of leaves, thus there are following two functions:
- `spiral_dendrogram()`
- `spiral_phylo()`## Examples
1. Difference of **ggplot2** daily downloads to the mean of the current year (2015-2021). Each loop contains 52 weeks so that same weeks in different years locate at the same angle in the polar coordinates.

2. A phylogenetic life tree with 50645 species.

3. The spiral COVID-19 Shiny app

## License
MIT @ Zuguang Gu