Image1:汇管家交易地区动态变化图
Image2:汇管家交易地区动态变化图(根据交易量多少进行颜色标注)
Image3:汇管家交易地区动态变化图(根据交易金额大小进行颜色标注)
图形说明:
1)数据源是汇管家交易级LBS,以周为维度,只要这个终端(LBS)这周有交易就有一个点。
2)图形中的颜色的深度代表所依据属性的值的大小,颜色从红色到深紫色,共分了5个级别。
图形源程序:
# 载入程序包
library(ggmap) ## 用到的程序包:谷歌地图
library(animation) ## 用到的程序包:制作动画
library(ggplot2) ## 用到的程序包:画图
## 读取数据源
dat<-read.csv("E:/Beauty/日常工作汇总/分布图/all_trade1.csv",header=TRUE,sep=',')
data<-dat[,c(c(1:5),10,11)]
colnames(data)<-c('date','lon','lan','no_trade','amt_trade', 'no_trade_colv','amt_trade_colv')
data$lan<-as.numeric(data$lan)
data$lon<-as.numeric(data$lon)
data$no_trade<-as.numeric(data$no_trade)
data$amt_trade<-as.numeric(data$amt_trade)
data$no_trade_colv<-as.numeric(data$no_trade_colv)
data$amt_trade_colv<-as.numeric(data$amt_trade_colv)
cl<-colors() ###colour function
### 主程序
plotfunc<-function(x)
{
df<-subset(data,date==x)
df$lan<-as.numeric(df$lan)
df$lon<-as.numeric(df$lon)
df$amt_trade_colv<-as.numeric(df$amt_trade_colv)
a<-df$amt_trade_colv #####根据交易量多少进行颜色标注
# df$no_trade_colv<-as.numeric(df$no_trade_colv)
# a<-df$no_trade_colv #####根据交易金额大小进行颜色标注
p<-ggmap(get_googlemap(center='china',zoom=4,
maptype = 'roadmap'),extent='device')+
geom_point(
data=df,aes(x=lon,y=lan),colour=cl[a],shape=20,size=2)
}
#####图像保存为gif格式
time<-sort(unique(data$date))
m<-vector(mode="numeric",length=0)
saveGIF(for(i in time) {
print(plotfunc(i))
n<-dim(subset(data,data$date==i))
m[i]<-n[1]
}
,movie.name = "animation.gif",interval=0.5,nmax=max(m,na.rm=T))