作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下数据:
myData <- data.frame(FISCAL_YEAR_WEEK = c('2016-09','2016-09','2016-09','2016-09','2016-09','2016-10','2016-10','2016-10','2016-10','2016-10','2016-10','2016-10','2016-10','2016-11','2016-11','2016-11','2016-11','2016-12','2016-12','2016-12','2016-12','2016-12','2016-12','2016-14','2016-14','2016-14','2016-14'),
MOTOR_VEND_ID = c('7','E','F','F','M','7','9','E','E','F','F','M','R','7','E','F','F','E','E','F','F','M','M','7','E','F','M'),HGA_SUPPLIER=c('RHO','RHO','HWY','RHO','RHO','RHO','RHO','HWY','RHO','HWY','RHO','RHO','RHO','RHO','RHO','HWY','RHO','HWY','RHO','HWY','RHO','HWY','RHO','RHO','RHO','RHO','RHO'),
RTPAD_TOT = c(0,0,0,0,0,0,420,6,0,0,0,20,1,76,0,0,0,76,62,0,0,0,0,6,1,1,0))
RTPAD_TOT
的折线图反对
FISCAL_YEAR_WEEK
,按其他变量分组。
FISCAL_YEAR_WEEK
表示会计年度中的会计周。 2016-11 表示 2016 财年的第 11 周。这是我的 plotly 代码:
ax <- list(
type = "category",
showgrid = TRUE,
showline = TRUE,
autorange = TRUE,
showticklabels = TRUE,
ticks = "outside",
tickangle = 0
)
ay <- list(
range = c(0,300),
dtick = 50,
showgrid = TRUE,
showline = TRUE,
autorange = FALSE,
showticklabels = TRUE,
ticks = "outside",
tickangle = 0
)
plot_ly(myData,
x = FISCAL_YEAR_WEEK,
y = RTPAD_TOT,
type = 'scatter',
mode = 'markers+lines',
color = interaction(MOTOR_VEND_ID,HGA_SUPPLIER)) %>%
layout(xaxis = ax, yaxis = ay)
FISCAL_YEAR_WEEK
在 x 轴上都乱七八糟。
ggplot2
构建相同的图不会混淆我的 x 轴:
ggplot(data = myData,
aes(x = FISCAL_YEAR_WEEK,
y = RTPAD_TOT,
group = interaction(MOTOR_VEND_ID, HGA_SUPPLIER)))) +
geom_line()
ggplotly()
ggplotly()
命令,我的 x 轴将再次困惑。
type = "category"
我的 x 轴中的选项,因为我只想查看数据中存在的日期。此外,plotly 会将 2016-09 误解为 2016 年 9 月而不是 2016 年的第 9 个财政周。我正在构建一个 Shiny 的应用程序,其中我的 x 轴可以由用户更改为不仅是日期时间变量,而且是其他变量以及。有时,它可能是诸如 001、002、120 之类的序列号。因此将其设为数字/日期时间是没有意义的,因为这会在 002 和 120 之间产生巨大的差距。
type = "category"
这里需要选项。
FISCAL_YEAR_WEEK
但它不起作用:
myData$FISCAL_YEAR_WEEK <- factor(myData$FISCAL_YEAR_WEEK,levels=sort(unique(myData$FISCAL_YEAR_WEEK)))
最佳答案
直到最近,对 plot.ly 分类轴进行排序的唯一方法是对图形的第一个分类轨迹的数据进行排序(引用:Etienne 在 plot.ly community site 上的回答)。
That's changed ,您可以通过设置 categoryorder
来实现您想要的分类轴排序以下任何一种方式:
ax <- list(
type = "category",
categoryorder = "category ascending",
showgrid = TRUE,
showline = TRUE,
autorange = TRUE,
showticklabels = TRUE,
ticks = "outside",
tickangle = 0
)
ax <- list(
type = "category",
categoryorder = "array",
categoryarray = sort(unique(myData$FISCAL_YEAR_WEEK)),
showgrid = TRUE,
showline = TRUE,
autorange = TRUE,
showticklabels = TRUE,
ticks = "outside",
tickangle = 0
)
关于R plotly : Cannot re-arrange x-axis when axis type is category,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37766546/
我是一名优秀的程序员,十分优秀!