在 ggplotly 中用因子数据绘制点

Plotting points with factor data in ggplotly

我正在尝试将 ggplotly() 与具有 x 轴和 y 轴因子的散点图一起使用。但是,ggplotly 正在做一些我不理解的事情,这会极大地改变我的数据的呈现方式。这是一个例子,但请注意,我故意制作了 x 和 y 因子,它们不应被视为数字:

mydata = data.frame(x = factor(c(1:40)),
                    y = factor(sample(c(1:40), 40, replace = TRUE)),
                    count = sample(c(1:5), 40, replace = TRUE))

myplot = ggplot(mydata, aes(x, y)) + 
  geom_point(aes(size = count))

仅使用 ggplot 看起来很棒:

但是,当我使用 ggplotly(myplot) 时,我得到了这个,这显然非常不同:

我的最终目标是能够将鼠标悬停在每个点上并获取坐标和 "count" 变量。我对其他方法持开放态度,但我也想了解这里发生了什么。

看来plotly和ggplot2配合使用还是有很多问题。有时它会起作用,有时您会得到意想不到的结果(例如带有图例的刻面)。所以有时你不得不选择另一种选择;试试这个:

plot_ly(mydata, x = x, y = y,
        mode = "markers", size = count)