R中的Punchcard图
有谁能帮我在R中创建punchcard图(不使用ggplot)吗 就像用python制作的一样: 这个怎么样R中的Punchcard图,r,plot,R,Plot,有谁能帮我在R中创建punchcard图(不使用ggplot)吗 就像用python制作的一样: 这个怎么样 pctable<-data.frame(expand.grid(c("monday","tuesday","wednesday","thursday","friday","saturday","sunday"),1:22)) colnames(pctable)<-c("weekday","day") pctable$value=rnorm(nrow(pctable),15,8
pctable<-data.frame(expand.grid(c("monday","tuesday","wednesday","thursday","friday","saturday","sunday"),1:22))
colnames(pctable)<-c("weekday","day")
pctable$value=rnorm(nrow(pctable),15,8)
plot(pctable$day,pctable$weekday,cex=pctable$value/(max(pctable$value)/5), col=rgb(0,0,1), pch=19, yaxt="n", xaxt="n")
axis(1, at=1:22, labels=c(1:22))
axis(2, at=1:7, labels=c("monday","tuesday","wednesday","thursday","friday","saturday","sunday"), cex.axis=0.7)
pctable黑色边框在原始图形上看起来不错。它可以用符号()复制。
<添加代码>sqrt((pctable$value/max(pctable$value))/pi)
以确保值与符号的表面成比例,而不是与其半径成比例
pctable <- data.frame(expand.grid(weekday=c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"),
day=1:22), value=abs(rnorm(nrow(pctable), 20, 30)))
par(list(las=1, mar=c(6,6,1,1), mgp=c(4.5,1,0)))
bubble.size <- sqrt((pctable$value / max(pctable$value)) / pi)
symbols(pctable$day, pctable$weekday, circles=bubble.size,
inches=.2, fg="black", bg="blue", yaxt="n", xaxt="n", xlab="Day", ylab="Weekday")
axis(1, at=1:22, labels=c(1:22))
axis(2, at=1:7,labels=rev(c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday")), cex.axis=0.7)
pctable我知道你没有要求ggplot2,只是为了向未来的用户展示ggplot2是多么容易(使用特洛伊的数据):library(ggplot2);ggplot(pctable,aes(天,工作日,大小=值))+geom_点(shape=21,fill=“blue”)