我正在尝试使用echarts4r
(一种流行的Javascript Echarts库的R接口)在极坐标系内建立条形图。
可用的帮助文件指示根本不可能。在R中,e_bar()
中没有坐标相关的自变量(与e_line()
不同,后者确实有一个)。 Echarts文档还指出“可以在散点图和折线图中使用极坐标”。
然而,下面是Echarts画廊中的一个示例:该情节:https://ecomfe.github.io/echarts-examples/public/editor.html?c=bar-polar-real-estate。
我的尝试(显然没有成功)是:
gen_int <- function(n, k = 10) {
sample(as.integer(1:n), size = k, replace = TRUE)
}
library(dplyr)
dat <- tibble(id = letters[1:10],
x = gen_int(10),
y = gen_int(10))
library(echarts4r)
dat %>%
slice(1:5) %>%
e_charts(id) %>%
e_polar() %>%
e_bar(x, coordinateSystem = list('polar'))
任何想法如何做到这一点?在ggplot2
中,它看起来像这样:
dat %>%
ggplot(aes(x = id, y = x)) +
geom_col() +
coord_polar()
感谢任何提示!
答案 0 :(得分:1)
有趣。我们可以通过稍微修改e_polar
中的示例来实现这一点。
df <- data.frame(x = 1:10, y = seq(1, 20, by = 2))
df %>%
e_charts(x) %>%
e_polar() %>%
e_angle_axis() %>%
e_radius_axis() %>%
e_bar(y, coordinateSystem = "polar")
如您在链接示例中所见,需要极轴,半径轴和角度轴。