Movatterモバイル変換


[0]ホーム

URL:


Skip to contents

ggstats: extension toggplot2 for plotting stats

Theggstats package provides new statistics, new geometries and new positions forggplot2 and a suite of functions to facilitate the creation of statistical plots.

Installation & Documentation

To installstable version:

install.packages("ggstats")

Documentation of stable version:https://larmarange.github.io/ggstats/

To installdevelopment version:

remotes::install_github("larmarange/ggstats")

Documentation of development version:https://larmarange.github.io/ggstats/dev/

Plot model coefficients

library(ggstats)mod1<-lm(Fertility~., data=swiss)ggcoef_model(mod1)

Comparing several models

mod2<-step(mod1, trace=0)mod3<-lm(Fertility~Agriculture+Education*Catholic, data=swiss)models<-list("Full model"=mod1,"Simplified model"=mod2,"With interaction"=mod3)ggcoef_compare(models, type="faceted")

Compute custom proportions

library(ggplot2)ggplot(as.data.frame(Titanic))+aes(x=Class, fill=Survived, weight=Freq, by=Class)+geom_bar(position="fill")+geom_text(stat="prop", position=position_fill(.5))+facet_grid(~Sex)

Compute weighted mean

data(tips, package="reshape")ggplot(tips)+aes(x=day, y=total_bill, fill=sex)+stat_weighted_mean(geom="bar", position="dodge")+ylab("Mean total bill per day and sex")

Compute cross-tabulation statistics

ggplot(as.data.frame(Titanic))+aes(    x=Class, y=Survived, weight=Freq,    size=after_stat(observed), fill=after_stat(std.resid))+stat_cross(shape=22)+scale_fill_steps2(breaks=c(-3,-2,2,3), show.limits=TRUE)+scale_size_area(max_size=20)

Plot survey objects taking into account weights

library(survey, quietly=TRUE)#>#> Attachement du package : 'survey'#> L'objet suivant est masqué depuis 'package:graphics':#>#>     dotchartdw<-svydesign(  ids=~1,  weights=~Freq,  data=as.data.frame(Titanic))ggsurvey(dw)+aes(x=Class, fill=Survived)+geom_bar(position="fill")+ylab("Weighted proportion of survivors")

Plot Likert-type items

library(dplyr)#>#> Attachement du package : 'dplyr'#> Les objets suivants sont masqués depuis 'package:stats':#>#>     filter, lag#> Les objets suivants sont masqués depuis 'package:base':#>#>     intersect, setdiff, setequal, unionlikert_levels<-c("Strongly disagree","Disagree","Neither agree nor disagree","Agree","Strongly agree")set.seed(42)df<-tibble(    q1=sample(likert_levels,150, replace=TRUE),    q2=sample(likert_levels,150, replace=TRUE, prob=5:1),    q3=sample(likert_levels,150, replace=TRUE, prob=1:5),    q4=sample(likert_levels,150, replace=TRUE, prob=1:5),    q5=sample(c(likert_levels,NA),150, replace=TRUE),    q6=sample(likert_levels,150, replace=TRUE, prob=c(1,0,1,1,0)))|>mutate(across(everything(),~factor(.x, levels=likert_levels)))gglikert(df)

Connect bars

ggplot(diamonds)+aes(x=clarity, fill=cut)+geom_bar(width=.5)+geom_bar_connector(width=.5, linewidth=.25)+theme_minimal()+theme(legend.position="bottom")

Generate a cascade plot

diamonds|>ggcascade(    all=TRUE,    big=carat>.5,"big & ideal"=carat>.5&cut=="Ideal")

Links

License

Citation

Developers


[8]ページ先頭

©2009-2025 Movatter.jp