plot(),lines(),gplot()等绘图方法不想记笔记,个人觉得它们的图像太丑,不想使用。
【图形】
本主最最常用的是
散点图:ggplot()+geom_point()
折线图:ggplot()+geom_line()
条形图:ggplot()+geom_bar()
直方图、箱线图等使用率低,方法与上述作图法差不多,就不说了
饼图:http://www.07net01.com/2015/08/901392.html
其他图形:
云图(还是经常用的)
中国地图(非常感兴趣,但不会用,世界地图没什么卵用),
热图(R语言画出来的:丑!本主吃饭画画都是挑颜值高的,除了挑男盆友,嘘,别告诉小胖)
气泡图(用过一次)
其他的类似QQ图向量图小提琴图七七八八的都没用过。
【问题】
1. 条形图
简单条形图:ggplot(date,aes(x=a,y=b))+geom_bar(stat=”identity”)
簇状条形图:ggplot(date,aes(x=a,y=b))+geom_bar(position=’dodge’,stat=”identity”)
频数条形图:ggplot(date,aes(x=a))+geom_bar()或ggplot(date,aes(x=a))+geom_bar(stat=’bin’)
堆积条形图:ggplot(date,aes(x=a,y=b,fill=分类))+geom_bar(stat=”identity”)
百分比堆积条形图:使用plyr包下的ddply()和transform()函数
Library(plyr)
ce<-ddply(serv,"service",transform,percent_num=order_num/sum(order_num)* 100)
ggplot(ce,aes(x=service,y=percent_num,fill=num))+geom_bar(stat="identity")
2. 折线图(?为嘛折线图遇见图例,图例的各项功能都失灵,好忧伤)
简单折线图:ggplot(date,aes(x=a,y=b))+geom_line()
多条折线图:
方法1:ggplot(data,aes(x=a,y=b))+geom_line(aes(colour=as.character(year)))
方法2:ggplot(data)+
geom_line(aes(x=a,y=year1),colour="#DD3377",size=1)+
geom_line(aes(x=a,y=year2),colour="#A81C54",size=1,linetype="dotted")
方法1&方法2针对不同的数据集,方法1中数据集的不同的year放在同一列,方法二数据集按不同的year数据分为多列。但图像的效果可以是一样的,方法2效果更灵活。
3.其他图形
云图:
wordcloud(words,freq,scale=c(4,.5),min.freq=3,max.words=Inf,random.order=TRUE,random.color=FALSE,rot.per=.1,colors="black",ordered.colors=FALSE,use.r.layout=FALSE,fixed.asp=TRUE,...)
参数介绍:
(1)words——关键词列表,即显示在图上的字
(2)freq——关键词对应的词频列表
(3)scale——字号列表。c(最大字号,最小字号)
(4)min.freq——最小限制频数。低于此频数的关键词将不会被显示。
(5)max.words——限制词云图上关键词的数量。最后出现在词云图上的关键词数量不超过此限制。
(6)random.order——控制关键词在图上的排列顺序。T:关键词随机排列;F:关键词按频数从图中心位置往外降序排列,即频数大的词出现在中心位置。
(7)random.color——控制关键词的字体颜色。T:字体颜色随机分配;F:根据频数分配字体颜色。
(8)rot.per——控制关键词摆放角度。T:水平摆放;F:旋转90度。
(9)colors——字体颜色列表
颜色可以自定义:colors=c('red','blue','green','yellow','purple')
或自带主题模板:colors=brewer.pal(9,"Set1")
(10)ordered.colors——控制字体颜色使用顺序。T:按照指定的顺序给出每个关键词字体颜色,(似乎是要求颜色列表中每个颜色一一对应关键词列表);F:任意给出字体颜色。
例子:
colors=brewer.pal(9,"Set1")
par(mar = c(4, 4, 1, 0.5), bg = "white",font = 1)
wordcloud(split_positive_freq_wash$keyword,split_positive_freq_wash$freq,scale=c(3,0.4),min.freq=1,max.words=150,colors=colors,random.order=FALSE,random.color=TRUE)
library(wordcloud)
colors=brewer.pal(9,"Set1")
wordcloud(data$name,data$cash,scale=c(3,1),min.freq=300,colors=colors,random.order=FALSE,random.color=TRUE)