其他分享
首页 > 其他分享> > 【R语言作图初级2】

【R语言作图初级2】

作者:互联网

本篇包括基础作图中的文本属性、设置标题、图形尺寸、坐标轴设置。

上一篇主要是介绍了最基本的图形参数,符号,线条和颜色,先补充一下颜色部分。上一篇是从Set1中选取的颜色。

library(RColorBrewer)#调用
display.brewer.all()#展示RcolorBrewer调色板具体有哪些

 1.文本属性

(1)cex  指定文本大小,默认为1,参数为数字,具体要指定那些部分的字体,采用cex.XXX的格式。

cex.axis  坐标轴刻度文字。

cex.lab  坐标轴标签

cex.main  标题

cex.sub  副标题

(2)font 指定字体族、字号字样。1 = 常规,2 = 粗体,3 = 斜体,4 = 粗斜体,5 = 符号字体(这个不是太懂什么意思)

和cex上述一样的指定方式,还有ps  :  字体磅值,1磅约为1/72英寸,文本最终大小为ps*cex,具体大小我也不太敏感;family : 字体设置,个人理解是用什么字体类型,衬线我不懂什么是意思。

> names(pdfFonts())#看一下pdf输出有哪些字体可用
 [1] "serif"                "sans"                 "mono"                
 [4] "AvantGarde"           "Bookman"              "Courier"             
 [7] "Helvetica"            "Helvetica-Narrow"     "NewCenturySchoolbook"
[10] "Palatino"             "Times"                "URWGothic"           
[13] "URWBookman"           "NimbusMon"            "NimbusSan"           
[16] "URWHelvetica"         "NimbusSanCond"        "CenturySch"          
[19] "URWPalladio"          "NimbusRom"            "URWTimes"            
[22] "ArialMT"              "Japan1"               "Japan1HeiMin"        
[25] "Japan1GothicBBB"      "Japan1Ryumin"         "Korea1"              
[28] "Korea1deb"            "CNS1"                 "GB1"                 
> 

可以设置映射,相当于设置字体的简称,便于使用。示例中展示。

2.图形尺寸和边界

pin :图形宽和高;mai: 边界大小,下左上右,英寸;mar: 与mai单位不同,英分,默认值为

c(5,4,4,2)+0.1。可以借助par()。

都是以数值向量赋值。

3.添加标题、自定义坐标轴

(1)在作图函数内部设置。推荐。

dose<-c(2,4,6,8,10)
drugA<-c(5,10,15,18,20)
drugB<-c(3,7,12,18,25)
p1<-plot(dose,drugA,type = "b",col = "blue",lty = 2,pch = 16,lwd = 2,#上一节有讲这些参数的知识
         main = "Trials for DrugA",col.main = "red",cex.main = 2,font.main = 2,#设置主标题相关信息
         sub = "p1,This data is made up by xyf",col.sub = "pink",font.sub = 3,
         xlab = "Dosage",ylab = "Drug_Response",#横纵轴标签
         cex.axis =1.5,cex.lab = 1.5,#刻度及标签文字大小
         xlim = c(0,12),ylim = c(0,30),#设置范围
         mai = c(0.5,0.5,1,1)#图和标签标题啥的距离,需要的时候可以设置一下
         )

(2)在作图函数之外设置,title();axis()。 使用之前先抹掉默认的,不然就会直接加上去。

plot(dose,drugA,type = "b",lty = 3,pch = 16,ann = F)#ann = F,抹掉原来的title
title(main = "DrugA",sub = "p1,This data is made up by xyf",
      col.sub = "pink",font.sub = 3,#粉色,斜体。
      xlab = "Dosage",ylab = "Drug_Response",col.lab = "blue")

 上图的坐标轴是用的默认,下面尝试全部抹掉,重新设置。

plot(c(0,2,4,6,8,10),c(0,5,10,15,18,20),type = "b",lty = 3,pch = 16,ann = F,axes = F)#只有线和点
axis(side = 2,#左加刻度
     at = c(seq(0,24,4)),#要加在哪些位置
     labels = NULL,#这里不用另外设置,直接用at里的数即可
     lty = 1,pos = c(0,0),#在哪和另一条轴相交
     col = "blue",las = 2#垂直坐标轴
     )
axis(side = 1,#下加刻度
     at = c(seq(0,12,2)),#要加在哪些位置
     labels = NULL,#这里不用另外设置,直接用at里的数即可
     lty = 1,pos = c(0,0),#在哪和另一条轴相交
     col = "blue",las = 0#平行于坐标轴
)
title(main = "DrugA",sub = "p1,This data is made up by xyf",
      col.sub = "pink",font.sub = 3,#粉色,斜体。
      xlab = "Dosage",ylab = "Drug_Response",col.lab = "blue")

不得不说累死人,费劲,还是(1)比较方便,个人认为。

 (4)参考线和图例

啊先到这啦,下次再写后边的,周末歇一歇啦。

欢迎点赞鼓励、交流学习、批评指正~

标签:sub,作图,坐标轴,初级,字体,设置,cex,col,语言
来源: https://blog.csdn.net/m0_45047077/article/details/121717864