当前位置: 首页 > news >正文

乐山 做网站/百度搜索引擎优化的方法

乐山 做网站,百度搜索引擎优化的方法,中国设备网,苏州建设档案馆官方网站ggplot学习 主要参考学习《R语言实战》,单纯留些记录方便以后自己查找 ggplot2简介 # ggplot2简介 --------------------------------------------------------------- library(ggplot2) #ggplot()初始化图形并且指顶要用到的数据来源(mtcars&#xf…

ggplot学习

主要参考学习《R语言实战》,单纯留些记录方便以后自己查找

ggplot2简介

# ggplot2简介 ---------------------------------------------------------------
library(ggplot2)
#ggplot()初始化图形并且指顶要用到的数据来源(mtcars)和变量(wt、mpg)
#geom_添加几何对象,点、线等。具体看help
#lab()可以添加注释
ggplot(data = mtcars, aes(x = wt, y = mpg)) +geom_point(pch = 17, color = "blue", size = 2) + #三角形、蓝色、2倍大小geom_smooth(method = "lm",color = "red",linetype = 2,se = FALSE) + #线性拟合、产生红色虚线、se不产生置信区间labs(title = "Automobile Data", x = "Weight", y = "Miles Per Gallon")
##---几何函数
# geom_bar() 条形图 color、 fill、 alpha
# geom_boxplot() 箱线图 color、 fill、 alpha、 notch、 width
# geom_density() 密度图 color、 fill、 alpha、 linetype
# geom_histogram() 直方图 color、 fill、 alpha、 linetype、 binwidth
# geom_hline() 水平线 color、 alpha、 linetype、 size
# geom_jitter() 抖动点 color、 size、 alpha、 shape
# geom_line() 线图 colorvalpha、 linetype、 size
# geom_point() 散点图 color、 alpha、 shape、 size
# geom_rug() 地毯图 color、 side
# geom_smooth() 拟合曲线 method、 formula、 color、 fill、 linetype、 size
# geom_text() 文字注解 很多,参见函数的“帮助”
# geom_violin() 小提琴图 color、 fill、 alpha、 linetype
# geom_vline() 垂线 color、 alpha、 linetype、 size
###-----几何函数参数
# color 对点、线和填充区域的边界进行着色
# fill 对填充区域着色,如条形和密度区域
# alpha 颜色的透明度,从0(完全透明)到1(不透明)。
# linetype 图案的线条( 1=实线, 2=虚线, 3=点, 4=点破折号, 5=长破折号, 6=双破折号)
# size 点的尺寸和线的宽度
# shape 点的形状(和pch一样, 0=开放的方形, 1=开放的圆形, 2=开放的三角形,等等),参见图3-4
# position 绘制诸如条形图和点等对象的位置。对条形图来说, "dodge"将分组条形图并排, "stacked"堆叠分
# 组条形图, "fill"垂直地堆叠分组条形图并规范其高度相等。对于点来说, "jitter"减少点重叠
# binwidth 直方图的宽度
# notch 表示方块图是否应为缺口( TRUE/FALSE)
# sides 地毯图的安置( "b"=底部, "l"=左部, "t"=顶部, "r"=右部, "bl"=左下部,等等)
# width 箱线图的宽度


直方图

# 直方图 ---------------------------------------------------------------------
data(singer, package="lattice")
ggplot(singer, aes(x = height)) + geom_histogram(color = "red",#边框颜色fill = "yellow",#填充区颜色alpha = 0.9,#颜色透明度linetype = 4,#边框线条size = 0.5,#线宽binwidth = 0.5#直方图宽度
)

这里写图片描述


箱线图

ggplot(singer, aes(x=voice.part, y=height)) + geom_boxplot()

这里写图片描述


折线图

注意X轴的数据要转换成因子型

    ggplot(data=pic_data,aes(x=pic_data[,1],y=pic_data[,10],group=1))+geom_line(colour="blue",size=1)+geom_point(colour="red",size=2,shape=17)+labs(title = paste0(start_date,"至",end_date,"逾期未还占比"),x = "日期",y = "占比")+geom_text(mapping = aes(label = y_labels),size = 3,colour = 'black',vjust = -0.8,hjust = .5,position = position_dodge(0.9))+geom_abline(slope = 0,intercept = averge_nofound,colour="red",size=1)+Theme

这里写图片描述

分组

密度图

###密度图
data(Salaries, package="car")
library(ggplot2)
ggplot(data = Salaries, aes(x = salary, color = rank,fill=rank)) + #color边框线,fill填充色geom_density(alpha = .3) +scale_fill_brewer( type = "seq",palette="Greens") + #指定色系是浅绿到深绿scale_colour_manual(values=c("red", "yellow", "blue"))#指定边框线

分组密度图方便比较各组数据的分布是否存在差异
这里写图片描述


交叉分组散点图

ggplot(Salaries,aes(x = yrs.since.phd,y = salary,color = rank,shape = sex )) + geom_point() +scale_colour_manual(values = c("red", "yellow", "blue"))#指定点的颜色
#统一整个图层时就放到aes外,想分成不同组调整,并且已经有一个与x、y长度一致的分组变量了,那就放到aes里
#shape表示点的形状不同~aes原理可以参考下面的回答
#https://www.zhihu.com/question/24779017/answer/38750383

这里写图片描述


分组条形图

##########"dodge"将分组条形图并排;
##########"stacked"堆叠分组条形图;
##########"fill"垂直地堆叠分组条形图并规范其高度相等
p1 <- ggplot(Salaries, aes(x=rank, fill=sex)) +geom_bar(position="stack") + labs(title='position="stack"') +scale_colour_manual(values=c("yellow", "blue"))p2 <- ggplot(Salaries, aes(x=rank, fill=sex)) +geom_bar(position="dodge") + labs(title='position="dodge"')p3 <- ggplot(Salaries, aes(x=rank, fill=sex)) +geom_bar(position="fill") + labs(title='position="fill"')library(gridExtra)
grid.arrange(p1, p2, p3, ncol=3)

图三可以看出比例信息
这里写图片描述


分组柱形图

daykey <- rep(c("2017-07-01","2017-07-02","2017-07-03"),time=2)
data <- c(5,4,3,3,4,5)
type <- rep(c("type1","type2"),each=3)
pic_data <- data.frame(daykey,data,type)
ggplot(data = pic_data, aes(x = daykey, y = data, fill = type)) +geom_bar(position = "dodge", stat = "identity")+scale_fill_brewer(palette = "YlGnBu")+#黄绿蓝geom_text(data=pic_data,size=3,vjust=-1,aes(x = daykey, y = data, group = type,label=data),position=position_dodge(0.8))

这里写图片描述

刻面图

# facet_wrap(~var,ncol=n)
# 将每个var水平排列成n列的独立图
# facet_wrap(~var,nrow=n)
# 将每个var水平排列成n行的独立图
# facet_grid(rowvar~colvar)
# rowvar和colvar组合的独立图,其中rowvar表示行, colvar表示列
# facet_grid(rowvar~.) 每个rowvar水平的独立图,配置成一个单列
# facet_grid(.~colvar) 每个colvar水平的独立图,配置成一个单行##歌手的身高分布,把所有声部排成四行
data(singer, package="lattice")
library(ggplot2)
ggplot(data=singer, aes(x=height)) +geom_histogram() +facet_wrap(~voice.part, nrow=4)

这里写图片描述

##不同声部身高的核密度图
ggplot(data = singer, aes(x = height,fill=voice.part)) + geom_density() + facet_wrap( ~ voice.part, nrow =8) 

这里写图片描述

##按照性别分别绘图
ggplot(Salaries,aes(x = yrs.since.phd,y = salary,color = rank,shape = rank)) + geom_point() + facet_grid(. ~ sex) + scale_colour_manual(values = c("red", "yellow", "blue"))#指定颜色

这里写图片描述


拟合光滑曲线

# 拟合光滑曲线 ------------------------------------------------------------------
x <- seq(from = -10,to = 10,by = 2)
y <- x ^ 2  
#plot画平滑曲线图
plot(x,y) #plot函数画出散点图
splinedata <- spline(x,y,100)#插值函数,有四种方法可选
plot(splinedata, type = "l")
text(0,50, expression(y == x^2))#添加文本,坐标为(0,50)
#ggplot画,并且添加光滑曲线
library(ggplot2)
ggplot(data = NULL, aes(x = x, y = y)) +geom_point(color = "darkred") +annotate("text",x = 0 ,y = 50,parse = T,label = "y == x^2") + #添加注释geom_smooth(se = F)#geom_smooth()函数 se:是否绘制置信区间;level置信区间水平default0.95;method:平滑函数

这里写图片描述


其他

# 改变外观 --------------------------------------------------------------------##坐标轴
# scale_x_continuous()和scale_y_continuous():
# breaks=指定刻度标记, labels=指定刻度标记标签, limits=控制要展示的值的范
# 围
# scale_x_discrete()和scale_y_discrete():
# breaks=对因子的水平进行放置和排序, labels=指定这些水平的标签, limits=表
# 示哪些水平应该展示
# coord_flip() 颠倒x轴和y轴
####改变坐标轴标签
P <- ggplot(data=Salaries, aes(x=rank, y=salary, fill=sex)) +geom_boxplot() +scale_x_discrete(breaks=c("AsstProf", "AssocProf", "Prof"),labels=c("Assistant\nProfessor","Associate\nProfessor","Full\nProfessor")) +scale_y_continuous(breaks=c(50000, 100000, 150000, 200000),labels=c("$50K", "$100K", "$150K", "$200K"),limits=c(40000,200000)) +labs(title="Faculty Salary by Rank and Sex", x="", y="")
P
#####图例
P + labs(title = "Faculty Salary by Rank and Gender",x = "",y = "",fill = "Gender") + #fill改变图例名称theme(legend.position = c(.1, .8),#改变图例的位置plot.title = element_text(size = 15,hjust =0.5,vjust = 1,color="red") #改变标题的位置、颜色、字体大小)  # 在theme 设置中element_text()是一项很重要的内容
# element_text(family = NULL, face = NULL, colour = NULL, size = NULL, hjust = NULL, vjust = NULL, angle = NULL, lineheight = NULL)
# 参数family  表示字体样式
# 参数face    表示字体格式,可取值("plain", "italic", "bold", "bold.italic")
# 参数colour   表示字体颜色
# 参数size      表示字体大小
# 参数hjust     用于调整水平距离,可调整范围0到1之间
# 参数vjust     用于调整垂直距离,可调整范围0到1之间
# 参数angle     用于调整字体的倾斜度,调整范围0到360
# 参数lineheight  表示线条高度##标尺气泡图
ggplot(mtcars, aes(x=wt, y=mpg, size=disp)) + #size=disp生成连续性变量disp(发动机排量)的标尺geom_point(shape=21, color="black", fill="cornsilk") +labs(x="Weight", y="Miles Per Gallon",title="Bubble Chart", size="Engine\nDisplacement")
#由图可知,车辆越重、发动机排量越大,每加仑行驶距离越短##改变颜色
#改变点的颜色
+scale_color_manual(values=c("orange", "olivedrab", "navy"))
+scale_color_brewer(palette="Set1")#help(scale_color_brewer)查看具体参数
##改变点的形状
+scale_shape_manual(values = c( 16, 15))#指定点的形状16圆、15方形
#改变填充的颜色
+scale_fill_brewer()# 主题 ----------------------------------------------------------------------##可以调整颜色、背景、代码、网格线等。前面有个plot.title的标题修改。后面如果遇到实际的场景再补
# 在theme 设置中element_text()是一项很重要的内容
# element_text(family = NULL, face = NULL, colour = NULL, size = NULL, hjust = NULL, vjust = NULL, angle = NULL, lineheight = NULL)
# 参数family  表示字体样式
# 参数face    表示字体格式,可取值("plain", "italic", "bold", "bold.italic")
# 参数colour   表示字体颜色
# 参数size      表示字体大小
# 参数hjust     用于调整水平距离,可调整范围0到1之间
# 参数vjust     用于调整垂直距离,可调整范围0到1之间
# 参数angle     用于调整字体的倾斜度,调整范围0到360
# 参数lineheight  表示线条高度# 多重图 ---------------------------------------------------------------------##画单独的几个图形,需要调用gridExtra包
data(Salaries, package="car")
library(ggplot2)
p1 <- ggplot(data=Salaries, aes(x=rank)) + geom_bar()
p2 <- ggplot(data=Salaries, aes(x=sex)) + geom_bar()
p3 <- ggplot(data=Salaries, aes(x=yrs.since.phd, y=salary)) + geom_point()
library(gridExtra)
grid.arrange(p1, p2, p3, ncol=3)# 网格线--------------------------------------------------------------------mytheme <- theme(plot.title = element_text(size = 15,hjust =0.5, vjust = 1,color="black",face = "bold"), #改变标题的位置、颜色、字体大小panel.background=element_rect(fill="white",color="black"),# 白色背景,黑色外框panel.grid.major.y=element_line(color="black",linetype=1),#panel.grid.minor.y=element_blank(),panel.grid.minor.x=element_blank()#垂直方向没有网格线)
# 图形保存 --------------------------------------------------------------------myplot <- ggplot(data=mtcars, aes(x=mpg)) + geom_histogram()
ggsave(file="mygraph.png", plot=myplot, width=5, height=4)
#在当前路径下将myplot保存为名为mygraph.png的5英寸×4英寸(12.7厘米×10.2厘米) P
#NG格式的图片# 参考资料 --------------------------------------------------------------------#http://docs.ggplot2.org

坐标轴刻度设置

ggplot(data = overdue_order, aes(x = timeout_day, y = cumulative_ratio)) +geom_line() + geom_point(colour = "red",size = 2,shape = 17) +scale_y_continuous(limits=c(0,1),breaks=seq(from=0,to=1,by=0.05))+labs(xlab = overdue_order$timeout_day)
http://www.jmfq.cn/news/5084803.html

相关文章:

  • 网站建设设计的流程/矿泉水软文广告500字
  • 通信工程网站建设/郑州网络运营培训
  • 湖北省住房和城乡建设厅门户网站/郑州seo多少钱
  • 曰本真人性做爰 酥酥网站/百度网络营销中心
  • 深圳网站设计公司电/热搜榜排名今日
  • 做微信网站/线上宣传方式
  • 电商实训网站建设报告/百度推广技巧方法
  • 网站建设公司哪里好/线下营销推广方式有哪些
  • 新民正规网站建设价格咨询/网络广告四个特征
  • 西安网站制作的公司/网站运营师
  • 旅游加盟网站建设/江苏网站开发
  • 北京装修公司网站建设/电商网站对比表格
  • 一区适合晚上一个人看b站/免费优化网站
  • linux系统搭建网站/seo站长工具平台
  • 什么主题的网站容易做/百度小说官网
  • 方庄网站建设/补习班
  • 安徽设计网站建设/百度推广客户端电脑版
  • 触屏版网站模板/云南网站seo服务
  • 做网站骗/快排seo软件
  • 做资源网站违法吗/seo博客网址
  • 网站在互联网营销中的作用/常见的营销方式有哪些
  • 品牌网站官网/网络营销有哪些功能
  • 网站自动采集更新/今日国内新闻10则
  • 新疆网站备案/百度正版下载恢复百度
  • 应式网站/网站维护合同
  • php 企业建站cms/seo整站优化报价
  • 建立网站的流程多少钱/网站怎么快速排名
  • 梧州网站设计制作服务至上/离我最近的广告公司
  • 贵阳专业做网站的公司/海淀区seo搜索引擎优化企业
  • 国外做二手服装网站/提升seo排名平台