bogdanCsn
bogdanCsn

Reputation: 1325

Control which tick marks / labels appear on x-axis in 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).

Upvotes: 7

Views: 20454

Answers (2)

Oh No
Oh No

Reputation: 165

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

Upvotes: 5

niczky12
niczky12

Reputation: 5063

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/

Upvotes: 11

Related Questions