在R中以打印方式对齐轴文字

在R中以打印方式对齐轴文字,r,plotly,R,Plotly,我想在以下绘图中左对齐y轴文本: fig <- plot_ly( y = c("giraffes", " orange orangutans", "pigs"), x = c(20, 14, 23), name = "SF Zoo", type = "bar", orientation = 'h' ) fig 图根据我在这里发现的,不可能左对齐y轴标签() 周围的

我想在以下绘图中左对齐y轴文本:


fig <- plot_ly(
  y = c("giraffes", " orange orangutans", "pigs"),
  x = c(20, 14, 23),
  name = "SF Zoo",
  type = "bar", 
  orientation = 'h'
)
fig


图根据我在这里发现的,不可能左对齐y轴标签()

周围的一项工作是将标签放在酒吧内或酒吧外的右侧:

library(plotly)

fig %>% 
  plotly::layout(yaxis= list(showticklabels = FALSE)) %>% 
  plotly::style(text = c("giraffes", " orange orangutans", "pigs"), textposition = "auto", insidetextanchor="start")


您可以在此处找到yaxis的参考资料:

谢谢!我曾经遇到过这种情况,但是对于长名称和小值的值,它不能很好地呈现。您还可以使用字符串填充在较短的值的末尾填充空格。但是字母的长度是不同的,所以结果不是完全一致的。因此,与只使用y=c(“长颈鹿”、“橙色猩猩”、“猪”)不同,您可以尝试stringr::str_pad(c(“长颈鹿”、“橙色猩猩”、“猪”)、m_char,side=“right”),其中m_char。我看到的另一个选项是将标签放在右外侧,并增加xaxis限制(以防因尺寸而被切割)