不显示直方图x / y标签

问题描述

我已在R上上传一个网络,并计算了度数和度数中心度。现在,我想使用hist()使用这些元素制作两个直方图,但是我无法更改图形的x / y标签,我不知道为什么!谁能帮我? :)

这是数据:

structure(list(owner = c("ABBA JEANS MINING Sprl","ABBA JEANS MINING Sprl","ACACIA Sprl","AFRICAN ENGINEERING CORPORATE Sprl","AFRICAN mineRALS (Barbados) Ltd Sprl"),armed_band = c("Mayi Mayi Militia (Bakata Katanga)","Militia (Elements)","Batwa Ethnic Militia","FDD","Militia (Kamwina Nsapu)","RCD-Goma","Anti-Balaka","Kuluna Communal Militia","Mayi Mayi Militia (Bakata Katanga)"),freq = c(1,1,4,1)),row.names = c(NA,-10L),class = c("tbl_df","tbl","data.frame"))

这是我正在使用的代码

all_network=network(data_network,matrix.type="edgelist",directed=TRUE) 
InDegree <- degree(all_network,cmode="indegree")     
OutDegree <- degree(all_network,cmode="outdegree")   
par(mar = rep(2,4))
par(mfrow=c(1,2)) 
hist(InDegree,xlab="YYY",main="Number",ylab="Frequency",col="grey",breaks = c(1*0:200),xlim = range(1:40),freq=FALSE,)
hist(OutDegree,main="XXX",xlab='Number',col="lightblue",breaks = c(1*0:40),)
par(mfrow=c(1,1)) 

非常感谢您!

解决方法

您设置的边距太小,无法显示标签。

# This causes the problem
par(mar = rep(2,4))
# Reset par to default
dev.off()
par(mar = c(5.1,4.1,2.1))
par(mfrow=c(1,2)) 
hist(InDegree,main="Number",xlab="YYY",ylab="Frequency",col="grey",breaks = c(1*0:200),xlim = range(1:40),freq=T,)


hist(OutDegree,main="XXX",xlab='Number',col="lightblue",breaks = c(1*0:40),)

enter image description here