在R中格式化Plotly Y轴2的刻度标签

3

我正在尝试使用给定的 R Markdown 代码和 plotly 来显示除直线零以外的任何内容在我的次要 Y 轴上:

---
title: "Test Stack Overflow Trending"
author: ""
date: ""
output:
   html_document:
      self_contained: no
---

```{r plot1, results='asis', tidy=FALSE, echo=FALSE, fig.retina=NULL, message=FALSE, out.width = "92%", out.height="450px"}

require(plotly)
require(data.table)

mydt <- data.table(NAME = "Overall", Val = c(391234, 518834, 489567),perc = c(0.24,0.25,0.24), mytdate=c("2015-09-01","2015-10-01","2015-11-01"))

mydt$mydate <- as.Date(mydt$mytdate,"%Y-%m-%d")

p1 <- mydt %>%
  plot_ly(x = mydate, y = Val,type = "scatter", mode = "markers") %>%
add_trace(x = mydate, y = perc, yaxis = "y2", mode="lines+markers") %>%
  layout(showlegend = F, xaxis=list(title=""),yaxis=list(title=""),yaxis2 = list(side="right",overlay="y", ticks="inside",tickformat = ":04,2f"))

p1

```

我在Windows 7 64位操作系统上使用R 3.1.3 64位,使用的是plotly包版本2.0.16(于2015年12月中旬从Github下载)。以下是我在Google Chrome版本47.0.2526.111下获得的图像。请注意,我的右轴显示为常量零。我希望它显示类似于0.21、0.22、0.23、0.24之类的内容。我知道可以使用tickformat选项更改此设置,但我仍然没有弄清楚如何实现这一点。 在Google Chrome中看到的输出

我刚刚尝试了https://plot.ly/r/multiple-axes/,它对你的示例起作用了。 - MLavoie
2个回答

4
我有一个想法可以解决你的问题,但需要查阅文档。所以你只需调整图形的边距和大小,这样就会有足够的空间添加标签。
m = list(
    l = 50,
    r = 50,
    b = 100,
    t = 100,
    pad = 4
)

添加一个 layout() 并调整 heightwidth

p1 <- mydt %>%
    plot_ly(x = mydate, y = Val,type = "scatter", mode = "markers") %>%
    add_trace(x = mydate, y = perc, yaxis = "y2", mode="lines+markers") %>%
    layout(showlegend = F, xaxis=list(title=""),yaxis=list(title=""),yaxis2 = list(side="right",overlay="y", ticks="inside",tickformat = ":04,2f")) %>% layout(autosize = F, width = 750, height = 500, margin = m)

p1

enter image description here


太棒了!谢谢! - R_User123456789
我所需要做的就是在已经存在的layout()中添加“autosize=F,margin=m”。非常好用! - R_User123456789

0

好的,我找到了解决自己问题的方法。如果我在布局中删除showlegend=F选项,则y2轴将正确显示。我仍然无法弄清楚如何使它在不想显示图例的情况下正常工作。此外,我在布局中选择了错误的选项,应该是“overlaying”,而不是“overlay”。如果可能的话,仍然希望得到一个更好的答案,其中包括showlegend=F。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接