Package: ggextreme 0.1.0

Ahmad Sofi-Mahmudi

ggextreme: Bar Chart Races and Interactive Plots for Clinical Research

Presentation quality charts built on 'ggplot2' that the package itself does not provide. The bar chart race interpolates values on a uniform time grid, ranks every frame on its own values and eases bars into new positions, so a reordering field stays readable. Frames are ordinary 'ggplot2' objects laid out on a fixed pixel grid, which keeps the axis and label column from drifting between them, and are encoded to GIF or MP4. Circular images, such as the bundled country flags, can be placed at the end of each bar. Causal diagrams are drawn as directed acyclic graphs whose nodes and arrows each carry a rationale and references, shown on hover and opened with clickable links on click, through 'ggiraph'; the same diagram is also available as a static 'ggplot2' object. Network plots for network meta-analysis are drawn from arm level data, with the baseline characteristics and outcomes of every arm shown side by side on click. Forest plots for 'metafor' and 'meta' fits carry each study's record and risk of bias traffic lights, and replay a cumulative meta-analysis as an animation; funnel plots shade where each study would be significant and carry the pooled estimate without it, trim and fill and the tests for small-study effects; league tables for 'netmeta' fits show the direct and indirect evidence behind every estimate. Kaplan-Meier plots read survival and the hazard ratio at any time under the pointer, beside a risk table and proportional hazards tests, and swimmer plots give each patient a lane with their responses, progression and death. Nomograms of regression models, from linear and generalized linear models to mixed, Cox, parametric survival, ordinal and multinomial models, have a handle per predictor and compute each prediction with its confidence interval in the page. Choropleth maps of the world or of any 'sf' map step or play through the years, with several measures side by side for the same year. Causal diagrams can also show which paths between an exposure and an outcome an adjustment set leaves open, by the backdoor criterion; Kaplan-Meier plots give the restricted mean survival time up to a horizon the reader can move; league tables and network plots show where each network estimate's evidence comes from; and swimmer plots can carry a waterfall of best change and each patient's course beside the lanes. Four explorers put a threshold or an assumption in the reader's hands: the cutoff of a diagnostic test, with what it means for 1,000 people at any prevalence; the strength of unmeasured confounding, with E-values; the choices of a multiverse of analyses; and the threshold that defines a responder. Plots after CINeMA judge the confidence in each estimate of a network meta-analysis in six domains, with every judgment's reason and source, and show what lies behind them: each study's contribution, the estimates against a movable range of little difference, direct against indirect evidence, and a league table and a network marked with the judgments.

Authors:Ahmad Sofi-Mahmudi [aut, cre, cph]

ggextreme_0.1.0.tar.gz
ggextreme_0.1.0.zip(r-4.7-any)ggextreme_0.1.0.zip(r-4.6-any)
ggextreme_0.1.0.tar.gz(r-4.7-any)ggextreme_0.1.0.tar.gz(r-4.6-any)
ggextreme_0.1.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
ggextreme/json (API)

# Install 'ggextreme' in R:
install.packages('ggextreme', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/choxos/ggextreme/issues

Pkgdown/docs site:https://choxos.github.io

Datasets:
  • cleft_dag - An illustrative causal diagram for maternal smoking and orofacial clefts
  • clefts_qci - Quality of Care Index for orofacial clefts, 1990 to 2019
  • clefts_qci_world - Quality of Care Index for orofacial clefts in every country, 1990 to 2019
  • psoriasis_nma - Arm level data from five trials in plaque psoriasis

On CRAN:

Conda:

3.43 score 27 scripts 34 exports 62 dependencies

Last updated from:f6ecb85049. Checks:6 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-develOK317
source / vignettesOK236
linux-releaseOK309
windows-develOK244
windows-releaseOK341
wasm-releaseOK167

Exports:animate_choroplethanimate_kmanimate_metaanimate_racecinema_clinicalcinema_contributioncinema_incoherencecinema_judgecinema_leaguecinema_networkggcausalggchoroplethggdiagnosticggfunnelggkmggleagueggmetaggmultiverseggnmaggnomogramggraceggresponderggsensitivityggswimmergraph_plotgraph_savegraph_widgetnomogram_predictrace_flag_codesrace_flagsrace_framerace_paletterace_sizetheme_race

Dependencies:base64encbslibcachemclicpp11digestdplyrevaluatefarverfastmapfontawesomefontBitstreamVerafontLiberationfontquiverfsgdtoolsgenericsggiraphggplot2gluegtablehighrhtmltoolshtmlwidgetsigraphisobandjquerylibjsonliteknitrlabelinglatticelifecyclemagrittrMASSMatrixmemoisemimepillarpkgconfigpurrrR6raggrappdirsRColorBrewerRcpprlangrmarkdownS7sassscalesstringisystemfontstextshapingtibbletidyselecttinytexutf8vctrsviridisLitewithrxfunyaml

Bar chart races
The data | Looking at one frame | Writing the animation | Arguments worth knowing | Coloring by group | Images on the bars | References

Last update: 2026-10-06
Started: 2026-10-06

How the animation works
Values move at a constant rate | Rank does not move at a constant rate | Ranks are clamped just below the visible window | The geometry never moves | What a frame is made of | Cost

Last update: 2026-10-06
Started: 2026-10-06

Readme and manuals

Help Manual

Help pageTopics
Animate a choropleth mapanimate_choropleth
Animate a Kaplan-Meier plotanimate_km
Animate a cumulative meta-analysisanimate_meta
Render a bar chart race to a fileanimate_race
Draw network estimates against a range of little differencecinema_clinical
Draw where each network estimate's evidence comes from, study by studycinema_contribution
Draw direct, indirect and network estimates side by sidecinema_incoherence
Judge confidence in the results of a network meta-analysiscinema_judge
Draw a league table with a CINeMA confidence profile in every cellcinema_league
Draw a network plot with a strand for every study, colored by its judgmentcinema_network
An illustrative causal diagram for maternal smoking and orofacial cleftscleft_dag
Quality of Care Index for orofacial clefts, 1990 to 2019clefts_qci
Quality of Care Index for orofacial clefts in every country, 1990 to 2019clefts_qci_world
Draw an interactive causal diagramggcausal
Draw an interactive choropleth map over timeggchoropleth
Draw an interactive diagnostic threshold explorerggdiagnostic
Draw an interactive funnel plot for a meta-analysisggfunnel
Draw an interactive Kaplan-Meier plotggkm
Draw an interactive league table for a network meta-analysisggleague
Draw an interactive forest plot for a meta-analysisggmeta
Draw an interactive multiverse of analysesggmultiverse
Draw an interactive network plot for a network meta-analysisggnma
Draw an interactive nomogram for a regression modelggnomogram
Build a bar chart raceggrace
Draw an interactive responder threshold plotggresponder
Draw an interactive bias and tipping point explorerggsensitivity
Draw an interactive swimmer plotggswimmer
Use an interactive graph as a widget, a ggplot or a filegraph_plot graph_save graph_widget knit_print.ggrace knit_print.ggx_graph
Predict from a nomogramnomogram_predict
Arm level data from five trials in plaque psoriasispsoriasis_nma
Countries the bundled flags coverrace_flag_codes
Bundled circular country flagsrace_flags
Draw one frame of a bar chart racerace_frame
Colors used by the bar chart racerace_palette
The pixel size of a race framerace_size
The bare theme a race frame is drawn ontheme_race