The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
This document defines the official naming convention for color palettes in the evanverse package. Following these standards ensures:
Core Principle: type_name_source
structure with lowercase and underscores.
All palette names follow this structure:
[type]_[name]_[source]
│ │ │
│ │ └─ Optional: Source identifier
│ └───────── Required: Descriptive name
└──────────────── Required: Type prefix
Use 3-letter abbreviations to indicate palette type:
| Prefix | Type | Use Case | Example Scenario |
|---|---|---|---|
seq_ |
Sequential | Continuous values, one direction | Heatmaps, gene expression levels |
div_ |
Diverging | Values with meaningful midpoint | Fold change, up/down regulation |
qual_ |
Qualitative | Categorical data, no inherent order | Cell types, sample groups |
Examples:
Why required?
get_palette()list_palettes() intuitiveDescribes the palette’s visual characteristics or intended use:
Naming strategies:
# By color characteristics
qual_vivid # Bright, saturated colors
seq_muted # Soft, low-saturation colors
div_warm # Warm color tones
# By color description
div_redblue # Red to blue gradient
seq_sunset # Sunset-inspired colors
qual_earthy # Earth tone palette
# By application domain
qual_pbmc # PBMC (peripheral blood) data
seq_heatmap # Optimized for heatmaps
# By journal/standard
qual_nejm # New England Journal of Medicine style
qual_lancet # The Lancet journal styleGuidelines:
Only use for adapted palettes from other packages or standards:
| Suffix | Source | Usage |
|---|---|---|
_g |
ggsci | Adapted from ggsci package |
_rb |
RColorBrewer | Adapted from RColorBrewer |
_v |
viridis | Adapted from viridis package |
_sc |
single-cell | Single-cell data specific |
_bio |
bioinformatics | Bioinformatics standard |
Examples:
qual_nejm_g # NEJM palette from ggsci
qual_set1_rb # Set1 from RColorBrewer
seq_viridis_v # Viridis palette
qual_pbmc_sc # PBMC-specific paletteImportant: Custom palettes should NOT have source suffixes.
_, not
camelCase or dotsseq_, div_, or qual_# Clear and concise
qual_vivid # Type + descriptive characteristic
div_redblue # Intuitive color pair
seq_sunset # Evocative name
# Proper source attribution
qual_nejm_g # Journal style from ggsci
qual_set1_rb # RColorBrewer Set1
qual_pbmc_sc # Single-cell specific
# Domain-specific
seq_heatmap # Application-focused
qual_cosmic_g # Theme-based (Cosmic)library(evanverse)
# Type is inferred from prefix
get_palette("seq_sunset") # Automatically knows type = "sequential"
get_palette("div_redblue") # Automatically knows type = "diverging"
get_palette("qual_vivid") # Automatically knows type = "qualitative"
# Can still specify type explicitly
get_palette("seq_sunset", type = "sequential")
# Wrong type will error with helpful message
get_palette("seq_sunset", type = "diverging")
#> Error: Palette 'seq_sunset' is sequential, not diverginglibrary(ggplot2)
# Sequential - continuous values
ggplot(data, aes(x, y, fill = expression)) +
geom_tile() +
scale_fill_gradientn(colors = get_palette("seq_sunset"))
# Diverging - fold change
ggplot(data, aes(x, y, color = log2FC)) +
geom_point() +
scale_color_gradientn(colors = get_palette("div_redblue"))
# Qualitative - categories
ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) +
geom_point() +
scale_color_manual(values = get_palette("qual_vivid"))Checklist:
# ✅ Use clear, descriptive names
seq_sunset # Immediately understandable
qual_vivid # Describes the style
div_fireice # Evocative metaphor
# ✅ Keep it short
qual_ocean # Concise
seq_warm # Direct
# ✅ Credit sources
qual_nejm_g # Acknowledges ggsci
qual_set1_rb # Acknowledges RColorBrewer
# ✅ Be consistent in series
qual_earth_light # Clear series
qual_earth_medium # pattern
qual_earth_dark ## ❌ Don't use mixed case
MyPalette # Use: qual_mypalette
qualVivid # Use: qual_vivid
# ❌ Don't use other separators
my.palette # Use: qual_mypalette
custom-colors # Use: qual_custom
# ❌ Don't include numbers
palette_12 # Use metadata instead
colors_v2 # Use: qual_colors (version in docs)
# ❌ Don't omit type
beautiful # Use: qual_beautiful
sunset # Use: seq_sunset
# ❌ Don't be vague
nice_colors # Too generic
palette1 # Not descriptive
good_palette # MeaninglessFor related palettes:
# ✅ GOOD - Consistent pattern
seq_warm_light
seq_warm_medium
seq_warm_dark
# Or with explicit color counts
qual_earth_3 # 3-color version
qual_earth_6 # 6-color version
qual_earth_12 # 12-color version
# ❌ BAD - Inconsistent
seq_warm_light
seq_warm # Missing variant identifier
warm_dark # Missing type prefix
seq_warm2 # Number without underscoreseq_ → Sequential (one-direction gradients)
div_ → Diverging (two-direction from center)
qual_ → Qualitative (discrete categories)
_g → ggsci package
_rb → RColorBrewer package
_v → viridis package
_sc → single-cell specific
_bio → bioinformatics standard
□ Starts with seq_, div_, or qual_
□ All lowercase letters
□ Uses underscores for separation
□ No numbers in the name
□ Descriptive and intuitive
□ Source suffix only if adapted
□ Unique within its type
type_name_sourcestructure All lowercase + underscores only
?evanversevignette("get-started", package = "evanverse")Document Version: 1.0 Last Updated: 2026-02-11 Status: Official Standard
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.