【问题标题】:Sorting scatter chart in plotly在 plotly 中对散点图进行排序
【发布时间】:2021-03-05 01:53:03
【问题描述】:

我在散点图中设置正确的 x 轴顺序时遇到问题。有一个代码:

df <- data.frame(first = c("a", "b", "c"),
       sec = c(1, 2, 3), stringsAsFactors = FALSE)

df$first <- factor(df$first, 
                            levels = c("c", "a", "b"))
plot_ly() %>% 
  add_trace(x = df$first, y = df$sec, type = 'scatter', mode = 'lines', fill = 'tozeroy')

轴上的类别已正确排序,但值未正确排序。 你有什么想法我可以解决它吗? 感谢您的帮助!

【问题讨论】:

  • 我不确定我是否理解您的问题。期望的输出是什么? x 轴按照您设置为c("c", "a", "b") 的级别顺序排列。
  • x 轴的顺序是正确的,但是线是先到 b 再到 a。当有更多值时,它会导致图表混乱
  • 好的,我找到了解决方案。有必要根据级别设置数据帧的顺序,仅对于散点类型很重要,因为对于条形图来说一切正常。
  • 很高兴您找到了解决方案!请将其发布为答案并接受它,以便以后其他人可以更轻松地找到您的解决方案。谢谢!

标签: r shiny plotly


【解决方案1】:

为了解决这个问题,需要根据因子级别设置数据帧的顺序:

df <- df[order(df$first),]

我认为只有散点类型才需要这样做,因为排序条形图可以正常工作而无需添加上面的行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-22
    • 1970-01-01
    • 2021-11-04
    • 2022-01-16
    • 2020-09-30
    • 2021-10-10
    • 2022-12-11
    • 1970-01-01
    相关资源
    最近更新 更多