微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

echarts4r - 在 y 轴上显示长垂直文本

如何解决echarts4r - 在 y 轴上显示长垂直文本

我正在从 y 轴上的长文本中绘制离散类别。如果可能,我想显示所有文本(尽可能宽)。

这是我的尝试:

  • 最初,我进行了坐标翻转以在 y 轴上绘制文本标签
  • 我已将 y 轴的字体大小减小到 8。
  • 最后,我编写了一个用换行符替换空格的 JS 函数,因此每个类别的文本都堆叠在一起。

理想的解决方案:

一个理想的解决方案是,如果我们可以使文本跨越更大的宽度/空间,并减少图表绘图空间。 (假设您正在向右拖动 y 轴)

这是一个例子:

## Reproduceable dataset ##
df <- tribble(~name,~value,"This is a long text category A",10,"This is a long text category B",5,"This is a long text category C",25,"This is a long text category D",15
              )

这是最初的情节:

## Plot ##

df %>% 
  e_charts(name) %>% 
  e_bar(value) %>% 
  e_flip_coords() %>% 
  e_legend(show = F) %>% 
  e_title("Long text labels chart",left = 'center')

Initial plot

这是将文本相互堆叠后的图:

df %>% 
  e_charts(name) %>% 
  e_bar(value) %>% 
  e_flip_coords() %>% 
  e_legend(show = F) %>% 
  e_title("Long text labels chart",left = 'center') %>% 
  e_y_axis(axisLabel = list(fontSize = 8,formatter = htmlwidgets::JS("
                                                        function(params){return (params.split(' ').join('\\n'))}
                                                        ")
                            )
           )

enter image description here

我已经阅读了文档,根据我的理解,选项应该在 yAxis 下。axisLabel documentation

我试过了:

inside:但这对我的情况不起作用,它没有为长条绘制标签

width:文本块的宽度。 (没用)

textBorderWidth:文本的 Storke 线宽。 (没用)

我可能会遗漏某些内容并以错误的方式误解选项,因此非常感谢您的支持

注意:我在闪亮中使用这样的图,我会将它放在一列中。所以我希望职位是固定的而不是相对的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。