我对ggplot
图使用ggplotly()
时遇到了一个问题:y 轴消失了。这是一个使用数据集iris
可重现的示例(此示例非常转储,但无论如何)
data(iris)
g = ggplot(data = iris, aes(x = Petal.Length, y = Petal.Width, fill = Species)) +
geom_bar(stat = "identity", position = "dodge") +
scale_fill_manual(name = "legend", values = c("blue", "red", "green")) +
ylab("Y title") +
ylim(c(0,3)) +
xlab("X title") +
ggtitle("Main title")
g
ggplotly(g)
如您所见,Y 轴标题消失了。
好吧,如果删除ylim
它可以工作,但我想指定 y 限制。
我尝试执行以下操作:
data(iris)
g = ggplot(data = iris, aes(x = Petal.Length, y = Petal.Width, fill = Species)) +
geom_bar(stat = "identity", position = "dodge") +
scale_fill_manual(name = "legend", values = c("blue", "red", "green")) +
scale_y_continuous(name = "Y title", limits = c(0, 3)) +
xlab("X title") +
ggtitle("Main title")
g
ggplotly(g)
但现在是传奇标题不适合。
我的配置 : R 3.2.0, 情节 2.0.16, ggplot2 2.0.0
在这两个例子中,ggplot给出的图是我想要的,但ggplotly给出了别的东西。这是一个问题,有解决方法吗?
我不确定为什么会发生这种情况,但这里有一个解决方法。它会给你你想要的。
p <- ggplotly(g)
x <- list(
title = "X Title"
)
y <- list(
title = "Y Title"
)
p %>% layout(xaxis = x, yaxis = y)
我遇到了类似的问题。通过 ggplotly 推送的 ggplot 对象正在显示我的 y 轴标签的剪切 [在 Shiny 应用程序中]。
为了修复它,我按照 MLavoie 的建议做了,但后来它既有我的 ggplot 标签,也有我的 ggplotly 标签。为了解决这个问题,我只需将我的 ggplot 标签设置为空格,一切正常(如果您将它们设置为空,则绘图标签将与轴刻度线值重叠)。
p <- ggplotly(g + ylab(" ") + xlab(" "))
x <- list(
title = "X Title"
)
y <- list(
title = "Y Title"
)
p %>% layout(xaxis = x, yaxis = y)
我遇到了同样的问题,多亏了您的评论,我可以解决它。但是,我遇到了轴标签附在情节上的问题。所以我通过添加边距解决了它。
p <- ggplotly(g + ylab(" ") + xlab(" "))
x <- list(
title = "X Title")
y <- list(
title = "Y Title")
p %>% layout(xaxis = x, yaxis = y, margin = list(l = 75, b =50))
'