目前绘制R语言交互图的主要有rchart,Highchart和plotly,我个人只用过最后一个,感觉很好。
本篇案例全部出自plotly官网。
气泡图
气泡图简而言之就是升级版的ScatterPlot,每一个横纵坐标上的点有了两个更多的属性,可以有颜色,还可以有大小,通过它可以再一个图像上显示3-4个维度的数据。
library(plotly)
data <- read.csv("https://raw.githubusercontent.com/plotly/datasets/master/school_earnings.csv")
p <- plot_ly(data,
x = ~Women,
y = ~Men,
text = ~School,
type = 'scatter',
mode = 'markers',
marker = list(size = ~gap, opacity = 0.5)) %>%
layout(title = 'Gender Gap in Earnings per University',
xaxis = list(showgrid = FALSE),
yaxis = list(showgrid = FALSE))
p
我们需要认真看一下data里边是什么:
> data
School Women Men gap
1 MIT 94 152 58
2 Stanford 96 151 55
3 Harvard 112 165 53
4 U.Penn 92 141 49
5 Princeton 90 137 47
6 Chicago 78 118 40
7 Georgetown 94 131 37
8 Tufts 76 112 36
9 Yale 79 114 35
10 Columbia 86 119 33
11 Duke 93 124 31
12 Dartmouth 84 114 30
13 NYU 67 94 27
14 Notre Dame 73 100 27
15 Cornell 80 107 27
16 Michigan 62 84 22
17 Brown 72 92