R语言边学边记-ggplot作图

library(ggplot2)

#数据集

mtcars

#基本格式:ggplot(data,aes(x,y))+geom_xx()+annotate()+labs()

#aes是美化的意思,geom几何,annotate是注释,lab是标签

#散点图

ggplot(mtcars,aes(mpg,wt))+geom_point()

#线图

ggplot(mtcars,aes(mpg,wt))+geom_line()

#点线图

ggplot(mtcars,aes(mpg,wt))+geom_line()+geom_point()

#柱状图,是连续变量,变成因子

ggplot(mtcars,aes(cyl))+geom_bar()

class(mtcars$cyl)#类型

table(mtcars$cyl)#频次

#转换成因子,分类变量

ggplot(mtcars,aes(factor(cyl)))+geom_bar()

#分组,内部再分组(用am分类),形成堆积柱形图

ggplot(mtcars,aes(factor(cyl),fill=factor(am)))+geom_bar()

#百分比的堆积柱形图

ggplot(mtcars,aes(factor(cyl),fill=factor(am)))+geom_bar(position="fill")

#如果不想堆积再加,并排

ggplot(mtcars,aes(factor(cyl),fill=factor(am)))+geom_bar(position = "dodge")

#直方图,一组数据

ggplot(mtcars,aes(mpg))+geom_histogram()

#密度图

ggplot(mtcars,aes(mpg))+geom_density()

#分类,color是对点线的描绘,fill是填充

ggplot(mtcars,aes((mpg),fill=factor(vs)))+geom_density()#全是密集填充

ggplot(mtcars,aes((mpg),fill=factor(vs)))+geom_density(alpha=0.5)#透明度为0.5

ggplot(mtcars,aes((mpg),col=factor(vs)))+geom_density()#col是点线图

#箱线图(最小值,最大值,中位数,上下四分位数)

ggplot(mtcars,aes(factor(vs),mpg))+geom_boxplot()

##分组作图,qsec是连续型变量为参考指标,vs是二分变量

ggplot(mtcars,aes(wt,mpg,color=qsec))+geom_point()

ggplot(mtcars,aes(wt,mpg,color=factor(vs)))+geom_point()

#aes内与外的区别

ggplot(mtcars,aes(wt,mpg))+geom_point()

ggplot(mtcars,aes(wt,mpg))+geom_point(color="blue")

ggplot(mtcars,aes(wt,mpg,color="yellow"))+geom_point()#会将color当成一个分组变量而不是颜色


#分面作图 facet_grid()

#1.轴刻度一致

#单变量作图

ggplot(mtcars,aes(wt,mpg))+geom_point()+facet_grid(.~vs)#不能有逗号,是句号,按照横轴排列

ggplot(mtcars,aes(wt,mpg))+geom_point()+facet_grid(vs~.)#是句号,纵轴排列

#双变量作图

ggplot(mtcars,aes(wt,mpg))+geom_point()+facet_grid(am~vs)

#不同的纵轴刻度

ggplot(mtcars,aes(wt,mpg))+geom_point()+facet_grid(vs~.,scale="free")

#调整图形,大小与形状

ggplot(mtcars,aes(wt,mpg,color=factor(vs)))+geom_point(shape=3,size=3)

#文本注释#标题#添加竖横线#"加号",不能再第一行#互换XY

ggplot(mtcars,aes(wt,mpg,color=factor(vs)))+

  geom_point(shape=3,size=3)+

  annotate("text",x=4,y=20,label="yes")+

  labs(title="hello",x="sss",y="yyy")+

  geom_vline(xintercept = 3.5)+

  geom_hline(yintercept = 20)+

  coord_flip()

#调整刻度范围#替换刻度值

ggplot(mtcars,aes(wt,mpg,color=factor(vs)))+

  geom_point(shape=3,size=3)+

  annotate("text",x=4,y=20,label="yes")+

  labs(title="hello",x="sss",y="yyy")+

  geom_vline(xintercept = 4)+

  geom_hline(yintercept = 2)+

  xlim(3,8)+

  ylim(15,25)+

  scale_x_continuous(breaks=c(3,3.75),labels = c("a","b"))

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.初识ggplot2 1.1 功能 是一个作图包; 可以创建图表,如散点,柱状图,线图,将数据可视化; 1.2 ...
    笨蛋白熊阅读 45,887评论 0 27
  • 使用GGPLOT2包进行数据可视化 Introduction简介 geom_smooth可以用于散点图,拟合一条直...
    一条很闲的咸鱼阅读 982评论 0 0
  • 我有一个好朋友,叫梁若萱,我和他一起长大,和他一起上春蕾幼儿园,有的人说她,漂亮,他和我一起叠过钢琴,他最喜欢和我...
    74dbd4385237阅读 214评论 0 0
  • 崎岖 美丽 天路 我穿过云海 我越过山峰 整个人都漂浮在山雾中 我应该是在飞 雪花托起我的身躯 是从云雾中抢过...
    缯青阅读 167评论 0 0
  • 白露过钱江南岸 微雨轻风好, 临江秋赋诗。 潮青来浩荡, 鸥白去参差。 暧暧吴云远, 葱葱越地滋。 炎凉时又转, ...
    徐不二阅读 499评论 1 3