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

16,845

Solution 1

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/

Solution 2

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)))
Share:
16,845
BogdanC
Author by

BogdanC

Data enthusiast, by day or by night.

Updated on June 13, 2022

Comments

  • BogdanC
    BogdanC almost 2 years

    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).

  • Angelo
    Angelo about 2 years
    I don't think your answer shows an example that answer precisely the question answered. I also have the same question and I can't figure out (unfortunately) from your answer how to customize the x axis.