让抖动出现在ggplotly中

我试图用因子轴站起来的曲线散点图,为可读性添加抖动值.

我能够在ggplot2中获得想要的效果,但是当我尝试用图形包装时,抖动不会成功.有什么办法让这个工作?

正在发生的事情的一个例子.下面的g看起来正确,但是然后p失去了抖动.

data<-data.frame(cbind(
  sample(c('level 1', 'level 2', 'level 3'), 100, replace = TRUE),
  sample(c('level 1', 'level 2', 'level 3', 'level 4'), 100, replace = TRUE)))

names(data)<-c('factor1', 'factor2')

g <- ggplot(data, aes(x=factor1, y=factor2)) 
g <- g + geom_point(position = position_jitter(w = 0.2,h = 0.2))
#g <- g + geom_jitter(width = .2, height = .2)
g <- g +xlab('Category One')
g <- g +ylab('Category Two')

g

p <- ggplotly(g)
p

最佳答案 可能有一个解决方法.用整数替换你的因子,然后重新标记.

data<-data.frame(cbind(
    sample(1:3, 100, replace = TRUE),
    sample(1:4, 100, replace = TRUE)))

names(data)<-c('factor1', 'factor2')

g <- ggplot(data, aes(x=factor1, y=factor2)) 
g <- g + geom_point(position = position_jitter(w = 0.2,h = 0.2)) + scale_x_continuous("Factor 1", breaks = c(1,2,3)) + scale_y_continuous("Factor 2", breaks = c(1,2,3,4))
ggplotly(g)

重新标记x和y标记

x <- list(
  tickprefix = "Level"
)

y <- list(
  tickprefix = "Level"
)

g %>% layout(xaxis = x, yaxis = y)

《让抖动出现在ggplotly中》

点赞