ggplot作图2

来源:互联网 发布:中国输电网络 编辑:程序博客网 时间:2024/05/22 16:57

ggplot做图


 eg:ggplot(data = mpg,mapping = aes(x=cty,y = hwy)) + geom_point()
                 + aes(colour = factor(mpg$year))

 1.其中data = mpg,mapping = aes(x=cty,y=hwy)表示数据层
        geom_point表示几何图形层
   aes(colout=factor(mpg$year))表示美学层,我们将year隐射到颜色属性
 
  2.如果将代码写成如下格式,则什么也不会出现,因为缺少几何层:
   ggplot(data = mpg,mapping = aes(x = cty,y = hwy)
 
  3.加上size=I(),可以确定几何层中点的大小
        ggplot(data=mpg,mapping = aes(x=cty,y=hwy))+
             geom_point(size=I(4))+aes(colour=factor(mpg$year)) 


  4.我们也可以绘制出它的拟合曲线以及置信区间,它根据年份利用stat_smooth()绘出了两条拟合曲线以及置信区间。
        ggplot(data=mpg,mapping = aes(x=cty,y=hwy))+geom_point()
      +aes(colour=factor(mpg$year))+stat_smooth()  
  
   5.如果我们只想绘制一条拟合曲线和一个置信区间,我们只需要将代码稍微改变一下就可以搞定。(将aes()放到了geom_point里面)
        ggplot(data=mpg,mapping = aes(x=cty,y=hwy))+
      geom_point(aes(colour=factor(mpg$year)))+stat_smooth()  

   6.在前面,我们将year变量映射到散点的颜色上面,现在我们也可以将displ变量映射到散点大小,绘制出来的大小不同的散点。
       ggplot(data=mpg,mapping =aes(x=cty,y=hwy))+  
            geom_point(aes(colour=factor(year),size=displ))+  
            stat_smooth()  


    7.可以改变alpha值得大小来改变散点的透明度。alpha的值在0—1之间,不在这个范围的话则会报错。
 为了与前面的图片有明显的区别,我再这里的alpha值调的比较小。一般默认alpha值得大小为1。
      ggplot(data=mpg,mapping = aes(x=cty,y=hwy))+  
            geom_point(aes(colour=factor(mpg$year),size=displ),alpha=0.25)+  
              stat_smooth()  


    8.我们也可以给图片增加标题,并精细修改图片,给图片增加x,y轴说明,以及其他说明。
        ggplot(mpg, aes(x=cty, y=hwy))+   
         geom_point(aes(colour=class,size=displ),alpha=0.6,position = "jitter")+  
          stat_smooth()+  
          scale_size_continuous(range = c(4, 10))+  
          facet_wrap(~ year,ncol=1)+  
          ggtitle("汽车油耗与型号")+  
          labs(y='每加仑高速公路行驶距离',  
           x='每加仑城市公路行驶距离')+  
            guides(size=guide_legend(title='排量'),  
                    colour = guide_legend(title='车型',  
                             override.aes=list(size=5)))  
 
       说明:position的函数,通过调整参数来改变图层的位置
            fill:填充方式, 先把数据归一化,再填充到绘图区的顶部。
            dodge:比如说不同折线的标记有可能重复,可以改变改参数进行一个“避让”方式,即往旁边闪,比如说如柱形图的并排方式。
            identity:原地不动,不调整位置,默认。
            jitter:如果严重的重叠,随机抖一抖,让本来重叠的露出点头来
            stack:在竖直方向叠罗汉,绘制出来类似条形图

9.我们需要把一个变量和其他不同的变量进行一个对比,这个时候我们就需要把他们画在同一张图上面。ggplot2绘图就和Photoshop有一个功能很相似,
 那就是  图层, 我们可以把不同的图层叠加在一起,这样就画在了同一张图上面。比如说我们要研究mpg数据中cty和hwy,
 以及displ之间的关系,我们就可以通过如下代码,将他们之间的散点图画在一起。
 ggplot()+  
       geom_point(aes(x=mpg$cty,y=mpg$hwy),color="red")+  
       geom_point(aes(x=mpg$cty,y=mpg$displ),color="green")




    10.我们来绘制一个扇形图,我们来统计一下class中各个品牌所占比例
      ggplot(mpg)+geom_bar(width=1, aes(x=factor(1),fill=mpg$class))+  
              coord_polar(theta="y")


  


   
 
 
0 0