R语言–百度ECharts接口(echarts4r包)

时间:2021-6-5 作者:qvyue

ECharts,是百度的一个开源的数据可视化工具,一个纯 Javascript 的图表库。echarts4r包是ECharts的R语言接口,目前可以从CRAN是直接安装。echarts4r语法结构简单,易用,可读性很好,是很好的交互式绘图包。

本文介绍echarts4r的常规交互式图形,交互式图形可以用在rmarkdown和shiny应用中。

安装包

install.packages("echarts4r")

散点图

echarts4r作图第一步用e_charts函数创建一个echarts4r对象,函数第一个参数为数据,第二个参数为x轴数据,第二步以及后续都是用%>%管道操作符来进一步作图。

绘制散点图,用iris数据,x轴为Sepal.Length。y轴为Petal.Length,在e_scatter中定义为serie。通过group_by根据Sepal.Length进行分组,在图中表现为不同颜色。散点大小通过size参数设置。

library(echarts4r)
iris %>% 
    group_by(Species) %>% 
    e_charts(x = Sepal.Length) %>% 
    e_scatter(serie = Petal.Length, size = Sepal.Width)
R语言--百度ECharts接口(echarts4r包)
scatter.png

对比一下ggplot2的散点图语法。

library(ggplot2)
iris %>% 
  ggplot(aes(x=Sepal.Length,y=Petal.Length,size=Sepal.Width,col=Species))+
  geom_point()
R语言--百度ECharts接口(echarts4r包)
ggplot2_scatter.png

柱状图

df % 
  e_charts(x) %>% 
  e_bar(y, name = "bar") %>% 
  e_title("Bar and step charts")
R语言--百度ECharts接口(echarts4r包)
bar.png

极坐标图

df %>% 
  e_charts(x) %>% 
  e_polar() %>% 
  e_angle_axis(x) %>% # angle = x
  e_radius_axis() %>% 
  e_bar(y, coord_system = "polar") %>% 
  e_scatter(z, coord_system = "polar")
R语言--百度ECharts接口(echarts4r包)
radius.png

漏斗图

funnel % 
  e_charts() %>% 
  e_funnel(value, stage) %>% 
  e_title("Funnel")
R语言--百度ECharts接口(echarts4r包)
funnel.png

热力图

v % 
  dplyr::group_by(x, y) %>% 
  dplyr::summarise(z = sum(z)) %>% 
  dplyr::ungroup()

matrix %>% 
  e_charts(x) %>% 
  e_heatmap(y, z) %>% 
  e_visual_map(z) %>% 
  e_title("Heatmap")
R语言--百度ECharts接口(echarts4r包)
heatMap.png

日历图

dates % 
  e_charts(date) %>% 
  e_calendar(range = "2018") %>% 
  e_heatmap(values, coord_system = "calendar") %>% 
  e_visual_map(max = 30) %>% 
  e_title("Calendar", "Heatmap")
R语言--百度ECharts接口(echarts4r包)
calendar.png

仪表盘

e_charts() %>% 
  e_gauge(41, "PERCENT") %>% 
  e_title("Gauge")
R语言--百度ECharts接口(echarts4r包)
gauge.png

雷达图

df % 
  e_charts(x) %>% 
  e_radar(y, max = 7, name = "radar") %>%
  e_radar(z, max = 7, name = "chart") %>%
  e_tooltip(trigger = "item")
R语言--百度ECharts接口(echarts4r包)
radar.png

词云

words % 
  dplyr::arrange(-freq)

tf %>% 
  e_color_range(freq, color) %>% 
  e_charts() %>% 
  e_cloud(terms, freq, color, shape = "circle", sizeRange = c(3, 15)) %>% 
  e_title("Wordcloud", "Random strings")
R语言--百度ECharts接口(echarts4r包)
cloud.png
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。