繁体   English   中英

如何在R中使用axis()正确对齐轴线和标签

[英]How to properly align the axis line and labels using axis() in R

我正在绘制人口中的工作分布图,因此x轴是分类变量。 我设法用类别名称标记了x轴,但它们与实际图不对齐。 我不确定要使用哪种语法来对齐。

数据和代码:

d<-structure(c(5L, 2L, 4L, 4L, 10L, 5L, 7L, 4L, 6L, 4L, 6L, 6L, 
7L, 7L, 3L, 4L, 5L, 6L, 7L, 12L, 11L, 12L, 7L, 1L, 12L, 6L, 12L, 
3L, 12L, 1L, 5L, 4L, 12L, 2L, 11L, 12L, 2L, 12L, 5L, 3L, 2L, 
1L, 1L, 2L, 3L, 4L, 4L, 7L, 10L, 12L, 5L, 6L, 5L, 5L, 11L, 11L, 
7L, 4L, 4L, 6L, 12L, 6L, 12L, 5L, 4L, 7L, 3L, 12L, 7L, 8L, 4L, 
2L, 3L, 3L, 4L, 4L, 5L, 5L, 7L, 3L, 7L, 2L, 5L, 6L, 7L, 4L, 5L, 
2L, 4L, 4L, 2L, 4L, 5L, 10L, 4L, 7L, 12L, 3L, 4L, 6L, 12L, 5L, 
4L, 2L, 4L, 4L, 12L, 1L, 3L, 4L, 5L, 4L, 7L, 4L, 4L, 3L, 1L, 
12L, 5L, 4L, 12L, 2L, 12L, 3L, 6L, 12L, 4L, 4L, 3L, 4L, 6L, 5L, 
12L, 2L, 5L, 7L, 4L, 7L, 7L, 4L, 6L, 6L, 4L, 7L, 6L, 6L, 12L, 
12L, 12L, 3L, 6L, 2L, 4L, 2L, 3L, 3L, 4L, 4L, 4L, 5L, 5L, 6L, 
6L, 12L, 12L, 4L, 3L, 12L, 12L, 6L, 2L, 4L, 2L, 7L, 2L, 2L, 4L, 
2L, 6L, 4L, 12L, 6L, 6L, 12L, 5L, 2L, 7L, 6L, 4L, 4L, 6L, 2L, 
1L, 2L, 6L, 7L, 2L, 6L, 1L, 2L, 8L, 12L, 12L, 5L, 2L, 4L, 3L, 
2L, 6L, 2L, 7L, 4L, 12L, 10L, 4L, 6L, 12L, 2L, 2L, 5L, 6L, 1L, 
3L, 4L, 4L, 5L, 8L, 4L, 5L, 5L, 12L, 6L, 4L, 3L, 6L, 6L, 7L, 
11L, 7L, 12L, 5L, 1L, 4L, 5L, 3L, 5L, 5L, 1L, 7L, 11L, 6L, 9L, 
10L, 11L, 11L, 12L, 5L, 12L, 3L, 7L, 11L, 4L, 4L, 7L, 5L, 4L, 
7L, 6L, 5L, 4L, 2L, 5L, 5L, 6L, 2L, 5L, 3L, 7L, 12L, 1L, 2L, 
2L, 2L, 3L, 3L, 4L, 6L, 10L, 12L, 7L, 8L, 3L, 12L, 2L, 8L, 11L, 
12L, 5L, 5L, 2L, 5L, 4L, 5L, 2L, 5L, 10L, 12L, 6L, 4L, 2L, 12L, 
5L, 6L, 7L, 2L, 1L, 5L, 2L, 6L, 2L, 5L, 2L, 12L, 6L, 3L, 5L, 
1L, 10L, 4L, 1L, 12L, 4L, 6L, 7L, 6L, 12L, 3L, 6L, 2L, 4L, 4L, 
6L, 7L, 7L, 5L, 7L, 7L, 3L, 1L, 7L, 1L, 5L, 3L, 4L, 1L, 5L, 6L, 
4L, 5L, 2L, 4L, 6L, 7L, 2L, 7L, 12L, 12L, 7L, 4L, 7L, 6L, 5L, 
12L, 12L, 6L, 4L, 2L, 7L, 10L, 11L, 4L, 7L, 12L, 4L, 6L, 7L, 
12L, 12L, 4L, 4L, 12L, 2L, 5L, 12L, 5L, 12L, 2L, 4L, 12L, 5L, 
12L, 7L, 11L, 12L, 4L, 1L, 2L, 6L, 4L, 2L, 4L, 4L, 2L, 6L, 5L, 
4L, 4L, 1L, 12L, 4L, 12L, 7L, 5L, 4L, 7L, 2L, 10L, 2L, 5L, 8L, 
6L, 2L, 6L, 2L, 4L, 2L, 7L, 11L, 4L, 12L, 6L, 6L, 4L, 4L, 3L, 
7L, 1L, 11L, 3L, 6L, 5L, 7L, 5L, 8L, 12L, 10L, 12L, 12L, 11L, 
7L, 5L, 4L, 5L, 11L, 4L, 8L, 2L, 7L, 5L, 8L, 6L, 2L, 11L, 12L, 
2L, 6L, 11L, 2L, 4L, 2L, 2L, 11L, 12L, 12L, 7L, 6L, 6L, 11L, 
5L, 4L, 4L, 3L, 5L, 8L, 4L, 5L, 5L, 5L, 12L, 4L, 4L, 2L, 2L, 
7L, 2L, 6L, 12L, 4L, 2L, 2L, 5L, 8L, 4L, 7L, 4L, 12L, 8L, 4L, 
5L, 5L, 4L, 4L, 2L, 4L, 6L, 12L, 12L, 5L, 12L, 2L, 7L, 5L, 12L, 
6L, 5L, 6L, 4L, 3L, 4L, 4L, 6L, 5L, 5L, 3L, 5L, 12L, 11L, 2L, 
5L, 7L, 7L, 11L, 12L, 2L, 12L, 2L, 7L, 3L, 12L, 6L, 11L, 2L, 
6L, 11L, 12L, 5L, 4L, 7L, 6L, 5L, 12L, 12L, 5L, 2L, 5L, 2L, 2L, 
12L, 6L, 4L, 12L, 1L, 12L, 12L, 12L, 11L, 7L, 4L, 2L, 12L, 11L, 
2L, 6L, 2L, 7L, 10L, 2L, 6L, 8L, 7L, 5L, 4L, 4L, 12L, 7L, 4L, 
12L, 2L, 12L, 4L, 4L, 2L, 6L, 12L, 5L, 5L, 1L, 5L, 12L, 4L, 2L, 
2L, 6L, 10L, 7L, 4L, 4L, 6L, 3L, 8L, 1L, 5L, 2L, 4L, 8L, 1L, 
3L, 12L, 12L, 10L, 3L, 4L, 6L, 12L, 2L, 12L, 7L, 4L, 11L, 2L, 
4L, 5L, 10L, 5L, 1L, 11L, 1L, 2L, 2L, 2L, 2L, 5L, 7L, 7L, 8L, 
12L, 4L, 4L, 5L, 10L, 4L, 12L, 6L, 6L, 12L, 6L, 2L, 2L, 1L, 10L, 
7L, 8L, 7L, 5L, 12L, 12L, 5L, 12L, 4L, 3L, 7L, 2L, 1L, 3L, 4L, 
10L, 4L, 5L, 5L, 6L, 7L, 1L, 4L, 6L, 5L, 11L, 5L, 2L, 7L, 4L, 
5L, 7L, 2L, 4L, 4L, 5L, 5L, 5L, 12L, 12L, 7L, 2L, 2L, 8L, 3L, 
8L, 11L, 1L, 4L, 7L, 2L, 1L, 4L, 5L, 6L, 12L, 11L, 5L, 4L, 4L, 
1L, 7L, 4L, 2L, 4L, 11L, 4L, 4L, 4L, 11L, 5L, 2L, 6L, 11L, 3L, 
6L, 10L, 12L, 12L, 4L, 6L, 2L, 6L, 3L, 6L, 7L, 7L, 11L, 7L, 11L, 
6L, 12L, 7L, 2L, 6L, 5L, 8L, 4L, 4L, 11L, 10L, 12L, 7L, 6L, 4L, 
4L, 2L, 12L, 2L, 12L, 12L, 4L, 9L, 11L, 2L, 11L, 11L, 4L, 7L, 
2L, 1L, 4L, 4L, 7L, 12L, 12L, 3L, 4L, 1L, 4L, 4L, 6L, 6L, 4L, 
2L, 7L, 12L, 7L, 5L, 2L, 12L, 1L, 2L, 3L, 5L, 6L, 5L, 5L, 5L, 
6L, 7L, 7L, 2L, 8L, 5L, 5L, 4L, 8L, 6L, 5L, 5L, 4L, 2L, 4L, 4L, 
5L, 5L, 10L, 11L, 2L, 6L, 12L, 3L, 7L, 5L, 12L, 5L, 5L, 6L, 6L, 
2L, 11L, 8L, 4L, 2L, 7L, 5L, 2L, 4L, 5L, 5L, 7L, 5L, 2L, 6L, 
2L, 3L, 6L, 4L, 9L, 6L, 1L, 4L, 6L, 6L, 2L, 4L, 7L, 5L, 2L, 12L, 
4L, 3L, 7L, 2L, 11L, 5L, 4L, 5L, 5L, 11L, 12L, 7L, 4L, 12L, 10L, 
6L, 5L, 12L, 7L, 4L, 5L, 5L, 11L, 2L, 11L, 2L, 2L, 7L, 12L, 7L, 
12L, 3L, 4L, 2L, 5L, 4L, 2L, 3L, 4L, 5L, 10L, 7L, 9L, 11L, 2L, 
2L, 11L, 5L, 8L, 7L, 11L, 10L, 4L, 4L, 2L, 4L, 5L, 5L), .Label = c("Construction", 
"Education or healthcare", "Finance", "Government/Military", 
"Legal or business", "Leisure and hospitality", "Manufacturing", 
"Media and telecommunications", "Mining and logging", "Transport and utilities", 
"Unemployed", "Wholesale or retail"), class = "factor")

#d

Occs<-c("Legal or business", "Education or healthcare", "Government/Military", "Transport and utilities", "Manufacturing", "Leisure and hospitality", "Finance", "Wholesale or retail", "Unemployed", "Construction", "Media and telecommunications", "Mining and logging")
#print(Occs)

#plot(d$Occupation)
plot(d, xaxt="n")
axis(side=1, at=1:12, labels=Occs, las=3, cex.axis=1) #, cex.axis=0.35

d是一个因数,这意味着通过有点迷宫的S3方法对plot分派,您最终会调用plot.factor ,后者又会调用barplot(table(d)) 方便地, barplot返回条形中点的值:

p <- plot(d, xaxt="n")
axis(side=1, at=p, labels=Occs, las=3, cex.axis=1) #, cex.axis=0.35

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM