plotly.R icon indicating copy to clipboard operation
plotly.R copied to clipboard

add_annotations doesn't respect log scale

Open sjmgarnier opened this issue 4 years ago • 3 comments

When using add_annotations with a log scale, the coordinates of the annotations are not automatically log-transformed.

exp_dat <- data.frame(x = 0:100, 
                      y = exp(0:100))
ann_dat <- data.frame(x = c(1, 10, 100), 
                      y = exp(c(1, 10, 100)),
                      label = c(1, 10, 100))

plot_ly(type = "scatter", mode = "lines+markers") %>%
  add_lines(., data = exp_dat, x = ~x, y = ~y) %>%
  add_annotations(., data = ann_dat, x = ~x, y = ~y, text = ~label) %>%
  layout(., yaxis = list(type = "log"))

The desired result can be obtained by manually log-transforming the coordinates, but it would be more intuitive if this wasn't necessary.

plot_ly(type = "scatter", mode = "lines+markers") %>%
  add_lines(., data = exp_dat, x = ~x, y = ~y) %>%
  add_annotations(., data = ann_dat, x = ~x, y = ~log10(y), text = ~label) %>%
  layout(., yaxis = list(type = "log"))

sjmgarnier avatar Apr 11 '20 14:04 sjmgarnier

Hey, I have the exact same problem..

daquity36 avatar Mar 26 '23 05:03 daquity36

This bug is also present in the Python version. I can't believe it's still there after 3 years!

kb- avatar Oct 25 '23 15:10 kb-