I have the dataframe below and I try to format the tick between numeric values in x and y axes but I cant set it to 5. Also I cannot set the initial tick to 0.
sumscope2<-structure(list(Year = c(1962, 1976, 1988, 1989, 1991, 1997, 2002,
2008), Country = c("Algeria", "Algeria", "Algeria", "Algeria",
"Algeria", "Algeria", "Algeria", "Algeria"), Scope = c(2, 9,
3, 2, 15, 3, 23, 4)), class = c("grouped_df", "tbl_df", "tbl",
"data.frame"), row.names = c(NA, -8L), groups = structure(list(
Year = c(1962, 1976, 1988, 1989, 1991, 1997, 2002, 2008),
.rows = structure(list(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -8L), .drop = TRUE))
library(plotly)
fig <- plot_ly(data = sumscope2, x = ~Year, y = ~Scope,mode = 'lines markers',
marker = list(size = 10,
color = 'rgba(255, 182, 193, .9)',
line = list(color = 'rgba(152, 0, 0, .8)',
width = 2)),
text=paste("Year :", sumscope2$Year,
"<br> Count of Scopes :", sumscope2$Scope),
hoverinfo="text"
)%>%
layout(title="Count of Scope per country and year",
xaxis=list(tickvals=~Year,ticktext=~Year,dtick = 5),
yaxis=list(tickvals=~Scope,ticktext=~Scope,dtick = 5,tick0 = 0)
)
fig
CodePudding user response:
You can't combine tickvals and dtick.
tickvals is the way to "manually" place the ticks and dtick provides the steps in-between ticks on the axis (which might not correspond with irregular tickvals).
Please check the following:
sumscope2 <- structure(list(Year = c(1962, 1976, 1988, 1989, 1991, 1997, 2002,
2008), Country = c("Algeria", "Algeria", "Algeria", "Algeria",
"Algeria", "Algeria", "Algeria", "Algeria"), Scope = c(2, 9,
3, 2, 15, 3, 23, 4)), class = c("grouped_df", "tbl_df", "tbl",
"data.frame"), row.names = c(NA, -8L), groups = structure(list(
Year = c(1962, 1976, 1988, 1989, 1991, 1997, 2002, 2008),
.rows = structure(list(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -8L), .drop = TRUE))
library(plotly)
sumscope2DF <- as.data.frame(sumscope2)
fig <- plot_ly(
data = sumscope2DF,
x = ~ Year,
y = ~ Scope,
type = "scatter",
mode = "lines markers",
marker = list(
size = 10,
color = 'rgba(255, 182, 193, .9)',
line = list(color = 'rgba(152, 0, 0, .8)',
width = 2)
),
line = list(color = 'rgba(152, 0, 0, .8)',
width = 2),
text = paste(
"Year :",
sumscope2DF$Year,
"<br> Count of Scopes :",
sumscope2DF$Scope
),
hoverinfo = "text"
) %>% layout(
title = "Count of Scope per country and year",
xaxis = list(
dtick = 5
),
yaxis = list(
dtick = 5,
tick0 = 0
)
)
fig
PS: Please run schema() and navigate
object ► layout ► layoutAttributes ► xaxis ► dtick
to see the argument description.

