会用到webr
包。完整的代码如下所示(当然用的时候只需要定义自己需要的就可以)。
PieDonut(data, mapping, start = 0, addPieLabel = TRUE,
addDonutLabel = TRUE, showRatioDonut = TRUE, showRatioPie = TRUE,
ratioByGroup = TRUE, showRatioThreshold = 0.02, labelposition = 2,
labelpositionThreshold = 0.1, r0 = 0.3, r1 = 1, r2 = 1.2,
explode = NULL, selected = NULL, explodePos = 0.1, color = "white",
pieAlpha = 0.8, donutAlpha = 1, maxx = NULL, showPieName = TRUE,
showDonutName = FALSE, title = NULL, pieLabelSize = 4,
donutLabelSize = 3, titlesize = 5, explodePie = TRUE,
explodeDonut = FALSE, use.label = TRUE, use.labels = TRUE)
举例说明吧
r0=0.7
表示中间也就是第一层镂空,labelpositionThreshold=0.1
表示百分比小于10%的样本的label会在外面。
require(moonBook)
#> Loading required package: moonBook
require(ggplot2)
browser=c("MSIE","Firefox","Chrome","Safari","Opera")
share=c(50,21.9,10.8,6.5,1.8)
df=data.frame(browser,share)
PieDonut(df,ase(browser,count=share),r0=0.7,start=3*pi/2,labelpositionThreshold=0.1)
下面一个例子稍微有点不一样,
explode=5
表示排名第五个的数据会突出显示。
PieDonut(df,aes(browser,count=share),r0=0.7,explode=5,start=3*pi/2)
再来复杂一点的,这是一个二维数据的可视化。
PieDonut(mtcars,aes(gear,carb),start=3*pi/2,explode=3,explodeDonut=TRUE,maxx=1.7)
中间不镂空。
PieDonut(mtcars,aes(carb,gear),r0=0)
添加标题。
PieDonut(acs,aes(smoking,Dx),title="Distribution of smoking status by diagnosis")
最外层数据显示的比例是全数据间的比例而不是组间的比例。
PieDonut(acs,aes(Dx,smoking),ratioByGroup=FALSE,r0=0)
网友评论