我有以下情节
k.factor<-factor(sample(1:5, 100, replace = T))
s.factor<-factor(sample(c("A", "B", "C"), 100, replace = T))
plot(k.factor, s.factor)
我想删除左侧y轴(A,B,C)并将此信息绘制为图例。我怎么能抑制这种yaxis?我还希望概率轴显示为左y轴(而不是现在的右y轴)?我该怎么翻这个?
请仅以R答案为基础
答案 0 :(得分:1)
如果您不介意使用ggplot2
,可以这样做:
library(ggplot2)
ggplot(data.frame(k.factor, s.factor), aes(x = k.factor, fill = s.factor)) +
geom_bar(position="fill")
答案 1 :(得分:0)
您可以在绘图语句中设置axes=FALSE
,然后使用?axis
手动添加轴:
plot(k.factor, s.factor, axes=FALSE)
axis(1)
axis(2)
编辑:事实上,您必须自定义axis
语句。
# create offset and at variables
off <- 0.02
xat <- c(0, cumsum(prop.table(table(k.factor)) + off))
# plot
plot(k.factor, s.factor)
plot(k.factor, s.factor, axes=FALSE, off=100*off)
axis(1, at = (xat[-length(xat)] + xat[-1] - off)/2,
labels = 1:5, tick = FALSE)
axis(2)
您还可以查看?spineplot
以获取有关参数off
的更多信息。