Вторичная ось в плоты для R и Shiny - PullRequest
0 голосов
/ 06 апреля 2020

РЕДАКТИРОВАТЬ: Что касается моего вопроса 2, кажется, что это ошибка, и она еще не исправлена, поскольку это не является их главным приоритетом на данный момент. Кто-то попросил попробовать katex вместо латекса, но не уверен, как это работает https://github.com/plotly/plotly.js/issues/559

Я прикрепил вывод для кода - https://i.stack.imgur.com/u65if.jpg.

Я пытаюсь построить две оси y и общую ось x, используя plotly. Проблемы, с которыми я сталкиваюсь:

  1. Я бы хотел, чтобы отметки первичной и вторичной осей y имели общую линию сетки. А из графика видно, что это не так. Должен ли я вручную изменить диапазон? Как заставить его слиться с основной линией оси Y?

  2. Ховерлабели не конвертируются в латексный формат, несмотря на использование TeX. Как вы можете видеть из пи c, они остаются как \ alpha вместо греческой буквы

  3. Будет ли renderplotly () работать в Shiny со вторичной осью? Я еще не играл с ним и хотел знать, стоит ли мне подходить к нему по-другому.

Вот мой код

library(latex2exp)
library(ggplot)
library(plotly)

foo<-data.frame("x"=seq(0,100,1),"y"=rnorm(101),"z"=rnorm(101))

ay <- list(
overlaying = "n",
side = "left"
)

ay2 <- list(
overlaying = "y",
side = "right"

)

fig <- plot_ly()%>% 
add_lines(data=foo,x = ~x, y = ~y,name=TeX("\\alpha") ,line = list(color="blue"))%>%
add_lines(data=foo,x = ~x, y = ~z,name=TeX("\\beta") , yaxis = "y2",line = list(color="red"))%>% 
layout(
yaxis=ay,
yaxis2 = ay2,
hoverlabel = list(font=list(size=20))
)

config(fig,mathjax = 'cdn')


  [1]: https://i.stack.imgur.com/u65if.jpg
...