背景
一入Shiny深似海,不碰前端不可能。
在一些呈现效果中,需要用到双坐标轴,而ggplot2实现双坐标轴过于拧巴,同时ployly对ggplot2的交互式封装也有种种瑕疵。痛定思痛,决定踏上可视化不得不走的路——js,由于有htmlwidgets包的存在,我们可以把JavaScript中对数据可视化最优解决方案带到R里。包括那些空间可视化包Leaflet,词云包wordcloud2,对echarts和d3封装的recharts和NetworkD3等等,让我们在R里对数据蹂躏后能够更流畅的对数据进行呈现。


废话不多说,对双坐标轴的实现,本文有两种方式,简单点的调用echarts,而着重讲的是通过htmlwidgets包创建基于D3的可视化实现。
实现一个双坐标轴
# test data
library(formattable)
y<-data.frame(date=c('1月','2月','3月','4月','5月','6月','7月'), waterfall = c(2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6), humidity=percent(c(0.5012, 0.25, 0.1818, 0