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.
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.
- 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
Bar chart, line chart, scatter plot, histogram, density plot, area chart, pie/donut chart
Boxplot, violin plot, ridgeline, dot plot, strip/jitter/beeswarm, QQ plot, error bar plot, forest plot, lollipop chart, dumbbell chart
Heatmap, correlation matrix, pairs/scatter matrix, PCA biplot (2D/3D + scree)
Volcano plot, MA plot, Manhattan plot, Venn diagram, UpSet plot, survival curve (Kaplan-Meier)
Waterfall chart, slope chart, treemap, waffle chart, Sankey/alluvial diagram, radar/spider chart, network graph, word cloud, ACF/PACF
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
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
| 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 |
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
| 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 |
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.
Graph patterns and best practices informed by the R Graph Gallery and the data-to-viz classification system.
Prem Pratap Singh, Ph.D. Postdoctoral Researcher, UC Davis — Department of Viticulture and Enology prempsingh.com • LinkedIn
MIT License — free to use, modify, and distribute.