プロットバーチャートでxおよびy変数で定義した順序と異なる順序を取得するのはなぜですか。
例えば。
library(plotly)
plot_ly(
x = c("giraffes", "orangutans", "monkeys"),
y = c(20, 14, 23),
name = "SF Zoo",
type = "bar"
)
X変数(カテゴリ)が定義されているのと同じ順序で棒が表示される棒グラフが必要です。そのためのトリックはありますか?
plotly
はアルファベット順に実行します。変更したい場合は、因子のレベルを変更してみてください。次のようにdata.frame
の形式でデータを指定すると、これが可能になります。
library(plotly)
table <- data.frame(x = c("giraffes", "orangutans", "monkeys"),
y = c(20, 14, 23))
table$x <- factor(table$x, levels = c("giraffes", "orangutans", "monkeys"))
plot_ly(
data=table,
x = ~x,
y = ~y,
name = "SF Zoo",
type = "bar"
)
Plotly
は、提供されたデータに存在する順序で軸を並べます。アルファベット順にcharacter
ベクトルの場合。レベルの順序による要因の場合。この動作をオーバーライドするには、categoryorder
内のcategoryarray
に対してxaxis
とlayout
を定義する必要があります。
library(plotly)
xform <- list(categoryorder = "array",
categoryarray = c("giraffes",
"orangutans",
"monkeys"))
plot_ly(
x = c("giraffes", "orangutans", "monkeys"),
y = c(20, 14, 23),
name = "SF Zoo",
type = "bar") %>%
layout(xaxis = xform)