Skip to content

prem-p-singh/RGraphMaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RGraphMaker

Create 50 types of publication-ready graphs using R — no R knowledge required.

An AI skill that turns plain-language descriptions into professional R visualizations. Describe what you want, upload your data, and get PNG, PDF, or interactive HTML outputs instantly.

Volcano Plot Engines Outputs


How It Works

You: "Make a volcano plot from my DESeq2 results, highlight padj < 0.05, label top genes"
  ↓
RGraphMaker: reads your CSV → generates R script → executes → delivers PNG + PDF

No R code writing. No debugging. Just describe and receive.


Features

  • 50 graph types across 6 categories (basic, distribution, relationship, scientific, specialized, gallery extras)
  • 3 plotting engines: ggplot2 (default), base R, plotly (interactive)
  • 3 output formats: PNG (300 DPI), PDF (vector), interactive HTML
  • Auto-suggest mode: upload a dataset and get ranked graph recommendations with column mappings
  • Domain detection: auto-recognizes DESeq2, GWAS, survival, flow, network, geographic, and word frequency data
  • Plain-language customization: say "colorblind-friendly", "dark theme", "bigger text", "log scale" — it just works
  • Fallback system: every graph type works even if optional R packages aren't installed

Supported Graph Types

Category A — Basic / Core

Bar chart, line chart, scatter plot, histogram, density plot, area chart, pie/donut chart

Category B — Distribution & Comparison

Boxplot, violin plot, ridgeline, dot plot, strip/jitter/beeswarm, QQ plot, error bar plot, forest plot, lollipop chart, dumbbell chart

Category C — Relationship & Matrix

Heatmap, correlation matrix, pairs/scatter matrix, PCA biplot (2D/3D + scree)

Category D — Scientific / Genomics

Volcano plot, MA plot, Manhattan plot, Venn diagram, UpSet plot, survival curve (Kaplan-Meier)

Category E — Specialized

Waterfall chart, slope chart, treemap, waffle chart, Sankey/alluvial diagram, radar/spider chart, network graph, word cloud, ACF/PACF

Category F — Gallery Extras

Connected scatter, 2D density/hexbin, parallel coordinates, circular barplot, dendrogram, circular packing, chord diagram, streamgraph, animated charts (GIF), choropleth map, bubble map, 3D scatter/surface, diverging stacked bar, table visualization


Auto-Suggest Mode

Upload any dataset without specifying a graph type:

You: "What graphs can I make from this data?"

The built-in data profiler (scripts/data_profiler.R) analyzes your dataset and returns:

  • Data profile (rows, columns, types, missing data %)
  • Domain detection (DESeq2? GWAS? Survival? Geographic?)
  • Ranked recommendations (HIGH / MEDIUM / LOW priority) with suggested column mappings

Domain Detection

Data Pattern Detected As Top Recommendation
log2FC + padj + gene columns Differential expression Volcano Plot, MA Plot
CHR + BP + pvalue GWAS Manhattan Plot
time + status columns Survival data Kaplan-Meier Curve
source + target columns Flow data Sankey Diagram
lat + lon + value Geographic Bubble Map
word + freq columns Word frequency Word Cloud

Skill Structure

RGraphMaker/
├── SKILL.md                              # Main skill instructions + routing table
├── scripts/
│   ├── data_profiler.R                   # Auto-suggest engine
│   └── theme_presets.R                   # Reusable themes + palettes
├── references/
│   ├── graphs_basic.md                   # Bar, line, scatter, histogram, density, area, pie
│   ├── graphs_distribution.md            # Box, violin, ridgeline, dot, strip, QQ, forest, lollipop, dumbbell
│   ├── graphs_relationship.md            # Heatmap, correlation, pairs, PCA
│   ├── graphs_scientific.md              # Volcano, MA, Manhattan, Venn, UpSet, survival
│   ├── graphs_specialized.md             # Waterfall, slope, treemap, Sankey, radar, network, wordcloud, ACF
│   ├── graphs_gallery_extras.md          # 14 additional types from R Graph Gallery
│   └── customization_guide.md            # Plain-language → R code mapping
└── assets/
    └── sample_data/
        └── deseq2_results.csv            # Test dataset

11 files | 3,141 lines | 29KB packaged


Customization Cheat Sheet

What You Say What Happens
"red and blue" Manual color palette
"colorblind-friendly" Viridis palette
"Nature journal colors" ggsci NPG palette
"dark theme" Dark background + light text
"bigger text" Increased base font size
"no legend" / "legend on top" Legend position control
"log scale" Logarithmic axis
"flip it" / "horizontal" Coord flip
"split by group" Facet wrap
"add trend line" Linear regression + CI
"transparent background" For slides/posters
"interactive" Plotly HTML output
"wide format" / "square" Custom dimensions

R Package Requirements

Pre-installed (core): ggplot2, plotly, scales, dplyr, tidyr, readr, readxl, ggrepel, ggridges, corrplot, heatmaply, GGally, factoextra, cowplot, patchwork, igraph, ggalluvial, ggbeeswarm, ggpubr, ggsci, ggthemes, survival, forecast

Optional (auto-installed or fallback provided): survminer, treemapify, wordcloud, wordcloud2, UpSetR, ggVennDiagram, waffle, fmsb, tidytext, gganimate, circlize, packcircles, ggstream

Every graph type includes a pure ggplot2 or plotly fallback — the skill works regardless of your R setup.


Inspiration

Graph patterns and best practices informed by the R Graph Gallery and the data-to-viz classification system.


Author

Prem Pratap Singh, Ph.D. Postdoctoral Researcher, UC Davis — Department of Viticulture and Enology prempsingh.comLinkedIn


License

MIT License — free to use, modify, and distribute.

About

Create 50 types of publication-ready R graphs using plain language — no R knowledge required.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages