在 plotly 中更改 y 轴的格式

Change format of y axis in plotly

我正在尝试格式化 y axis 数字的格式(在 plotly 中)并且 - 经过数小时的谷歌搜索 - 我决定在这里提问。

我有一个这样的情节:

使用此代码生成:

library("plotly")
library("dplyr")

data.frame(miesiac_label = as.character(as.roman(c(1:12))),
           ile = c(12000, 12100, 11100, 12000, 12000, 11900, 12200, 12100, 6000, 12100, 12100, 12100)) -> dane
dane$miesiac_label <- factor(dane$miesiac_label, levels = dane[["miesiac_label"]])

plot_ly(dane) %>%
    add_trace(x = ~miesiac_label, y = ~ile,
              type = 'bar', marker = list(color = '#99d3df'))

我的目标是将 yaxis 格式从 12k, 10k, 8k, ... 更改为更多 "polish one",因此 12 tys, 10 tys, 8 tys, ...。我知道如何更改设置 ticktextticktext,但我不想自己设置值,我更喜欢让它们更自动。

我读过 thickformat 但我没有找到可以将 k 更改为 tys 的选项。

感谢您的帮助!

我认为使用 layout() 可以满足您的需求。首先,您需要将 y 除以 1000(也许还有其他方法),然后使用 ticksuffix 添加 tys.

plot_ly(dane) %>%
add_trace(x = ~miesiac_label, y = ~ile/1000, type = 'bar', marker = list(color = '#99d3df')) %>% 
layout(yaxis = list(ticksuffix= "tys", title = "ile"))