R画包含次坐标的图 plot()

先开始我在网上查到一个twoord.stackplot()包,画双坐标轴的图很容易,而且可以输入数据集,同时画好几条线。但是越集成的工具,自定义程度越低,我不会改变同一组数据的两条线的样式,反正就是不好用。最后还是老老实实用基础工具画了,其实不难。

这次画完图,又进步了一些。老师上课说R画的图很清楚,python画的图很粗糙,我就百分百信任他,也没用python试。反正R画图确实挺好用的。我人生最恨matlab,用旧电脑的时候,matlab那么大的安装包,我下载了好几个,一个都安装不成。气死我了,再也不想用了。学都不想学,听到matlab就恶心。

R和我还挺有缘的,是我开始学编程的入门。很奇怪。

1.画图

数据:

Date <- c(0,0.2,0.4,0.6,0.8,1)
Agents<-c(0,1,2,3,4,5,6,7,8,9,10)
cost_S<-c(11500,11750,12000,12250,12500,12750,13000,13250,13500,13750,14000)
Full_Time<- c(10,9,9,8,7,7)
Part_Time<- c(0,2,4,6,8,9)
Cost<-c(13800,13140,12540,12120,11940,11820)
df1 <- data.frame(Date=Date, Full_Time=Full_Time,Part_Time=Part_Time,Cost=Cost,Agents=Agents,cost_S=cost_S)
par(mar=c(4,4,4,4))  #设置图的边缘空白距离
par(mfrow=c(2,2)) #组合图:以2X2的组合
par(new=T) #在原来的图上继续画
plot(x = df1$Date, y = df1$Full_Time, type = "o",cex = 1.5, lwd = 1.5,
pch = 15, lty = 1,main='p=100%,cp=30',ylab='人数',xlab='比例',xlim = c(0,1), ylim = c(0, 10))
#先画第一个图
#
type:图的类型
#lty:线型
#pch:数据标记,取值范围:1-25
#main:标题
#cex:数据标记的大小
#lwd:线的粗细

#xlim,ylim:坐标轴范围
axis(2, at = seq(0, 10, 1))
 #设置坐标轴间距和范围,1代表横轴,2代表左边纵轴,3代表上面的边框,4代表右边纵轴

par(
new=T)#在这个图上再画图 plot(x = df1$Date, y = df1$Part_Time, type = "o", cex = 1.5, lwd = 1.5, pch = 17, lty = 1,yaxt="n",ylab="",xlab='')
#
yaxt="n":不显示y轴,也没有y轴的标签,给下一步做次坐标轴打基础
par(new=T)
plot(x
= df1$Date, y = df1$Cost, type = "l", cex = 1.5, lwd = 1.5, lty = 2,
    yaxt="n",ylab="",xaxt="n",xlab="",pch=1)

axis(
4,at = seq(11500, 14000, 250)) #把次坐标轴的刻度标上去

legend(
"right", inset = 0.03, c("全职人员",'兼职人员','成本'), lty = c(1,1,2), pch = c(15,17,27),cex=0.75)
#图例,前两个参数表示位置,pch的参数取一个超出25的数,就没有数据标记了,会有警告
#cex 比例

mtext(
'成本',side=4,line=3)
#在图上写字,side表示哪一边,line表示与轴的距离

dev.off()
dev.new()
#图不显示的时候,用这个清除一下,就可以显示了

设置

par(mfrow=c(2,2))时,画了一个图的效果

 

 待解决问题:输出的图不够清楚,输出pdf清楚,但是pdf不能输出中文,网上的办法用了没用,图都出不来了

####################

已解决:

pdf("文件名.pdf",family="GB1")
 #存到文件里,字体是宋体,网上还有换字体的方法

中间是所有的画图过程   

 #画图过程在旁边看不到了,不再显示出来,所以基本调整好以后再放到这边,保存为pdf文件后,可能还需要盲调一下

dev.off()                           #关闭设备,关掉之后才能看文件

 

 

之前之所以没成功,是不理解过程,图没有显示出来,以为是画图失败了,实际上是存在pdf里了

PDF格式的图无论放多大都是清楚的,网上说用latax排班时可以直接作为图片排进去,好像还可以调整大小之类的。比以png或者jpge格式直接保存为图片清楚多了。其他格式就是要专业软件打开了。此次投稿本来就要用latax,所以pdf格式的图片可以直接用,如果用word投稿的话,怎么插进去最清楚?是不是只能插入图片格式的?永远不可能有pdf的效果?

 

 pdf效果

三点被老师叫,厚着脸皮没去,给老师打了电话。然后工作到现在,饭都没吃。

明明一天就可以完成的工作,生生拖了五天。唉。

而且画图其实很容易,我的数据量很小,大把时间卡在怎样把结果清晰地输出这一步了。我先开始看不起pdf,输出为图片折腾半天都不清楚,还在心里骂之前教我们R软件的那个老师,他把R夸得上天入地的。最后看到网上说,要么就输出为其他专业软件可打开的图片格式,要么就用代码调节像素和尺寸(我估计改进效果有限),要么就输出为pdf,怎么样放大都是清楚的,我才开始输出为pdf。然后在怎么样输出中文不乱码这个问题上卡了一两个小时,网上的办法全部都是一样的,我差点以为互联网抛弃我了,我就是全世界唯一一个不能用那个方法的人。最后发现,是我操作的有问题,没有从根本理解那个代码。其实解决办法就是那个,而且很简单。我的编程基本全是靠实践,遇到问题,解决问题学会一点的。感谢CSDN。

posted @ 2019-12-27 21:18  haolemao  阅读(732)  评论(0编辑  收藏  举报