同比增长:与上个周期的同一天或者同一个季度,进行对比。
环比增长:与同个周期的不同天或者不同季度,进行对比。
比如,本周星期三与上周星期三进行比较,就是同比,
本周星期三与本周星期二进行比较,就是环比。
下面,以某个论坛的军事科技版本的每日浏览量,来制造一个条形图,并依据上周和本周数据分为两组进行展示,进而分析同比增长与环比增长的区别。原始数据如表(一)所示。
用R语言,将上述数据,转化为条形图。
data
now=c(129,122,134,149,146,215,208));
ylim.max
col = c("azure4","brown4")
##将主副标题放到barplot函数里,进行设置
##font=3,表示字体为“斜体”
##cex=1.5,表示字体放大1.5倍
barplot(as.matrix(rbind( data$pre,data$now)),
beside=TRUE,ylim=c(0,ylim.max),col=col,axes=F,
main=list( "本周pv趋势分析图",cex=1.5,col="red",font=3),
sub=paste("范围:2014.12.1--2014.12.7","\n","网站板块:军事科技"),
ylab="网站日页面浏览量pv"
)
axis(2)
##画图例
text.legend = c("上周pv","本周pv","pv同比增长","pv环比增长")
col2
legend("topleft",pch=c(15,15,16,16), legend=text.legend,cex=0.8,col=c(col,col2),bty="n",
horiz=TRUE)
##画刻度标记
text.x
axis(side=1, c(2,5,8,11,14,17,20), labels=text.x,tick=TRUE, cex.axis=0.75)
axis(4,at=seq(from=250,length.out=7,by=40),labels=c("-60%","-40%","-20%","0","20%","40%","60%"))
##添加“同比增长曲线”和“环比增长曲线”
##同比增长 = (now[t]-pre[t])/pre[t]
same.pre.growth
##环比增长 = (now[t]-now[t-1])/now[t-1]
ring.growth
a
lines(c(2,5,8,11,14,17,20), a*same.pre.growth+b,type="b",lwd=2)
lines(c(2,5,8,11,14,17,20), a*ring.growth+b,type="b",lwd=2,col="blue")
##在同比和环比曲线上添加文字
j
for(i in 1:length(data[,1])){ #在bar上画数值
text(3*i-1, a*same.pre.growth[i]+b-5, paste(round(same.pre.growth[i]*10000)/100,
"%",sep=""));
j
text(3*i-1, a*ring.growth[i]+b+5, paste(round(ring.growth[i]*10000)/100,
"%",sep=""),col="blue");
j
}
##在pv柱状图上添加文字
j
for(i in 1:length(data[,1])){
text(j+0.5,data$pre[i]+10, data$pre[i], col="deepskyblue4");
j < j+1 #组内间距为1
text(j+1.5,data$now[i]+10, data$now[i], col="deepskyblue4");
j
}
效果如下:
图(2)
说明:PV 表示Page View ,页面浏览量
黑色的曲线,代表pv同比增长曲线
蓝色的曲线,代表pv环比增长曲线
从图(2)中可以看出,每周的周六和周日浏览量比较大,而星期一、星期二直到星期五的浏览量波动不大。浏览量的走势是:先减小,后增大,再减小,接着反弹到波峰,跟着回到平均水平。可以这么说,2014年12月6号周六,同比11月29号周六增长9.69%,环比12月5号周五增长47.36%