Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Control which tick marks / labels appear on x-axis in plotly?

Tags:

r

plotly

r-plotly

I want to have control over which tick marks appear on the x-axis. The following code places tick marks in a sequence of 5 (at 5, 10, 15 ... 30)

library(plotly)

df <- data.frame(x =  1:30,
                 y = sample(100:300, size = 30, replace = T))

p <- plot_ly(data = df, x = x, y = y, type = 'line') %>%
      layout(title = 'Example plot')
p

I need to place them in a sequence of 6 at 6, 12, 18, 24, 30. I've been browsing the documentation but I cannot seem to find what I need. In ggplot2 this can be done via scale_x_continuous(breaks=c(6,12,18,24,30).

like image 764
BogdanC Avatar asked Jun 14 '16 10:06

BogdanC


2 Answers

You can use style to add the ticks:

p <- plot_ly(data = df, x = x, y = y, type = 'line') %>%
    layout(title = 'Example plot', xaxis = list(autotick = F, dtick = 6))
p

enter image description here

Here are some more examples: https://plot.ly/r/axes/

like image 50
niczky12 Avatar answered Nov 22 '22 09:11

niczky12


If you need uneven spacing you can use tickvals, it requires tickmode = "array" as below

%>%
  layout(xaxis = list(autotick = F, tickmode = "array", tickvals = c(6,12,24)))
like image 29
Oh No Avatar answered Nov 22 '22 08:11

Oh No