楼主: skytreee
15301 13

[问答] 多个时间序列作图 [推广有奖]

  • 0关注
  • 2粉丝

已卖:3份资源

讲师

13%

还不是VIP/贵宾

-

威望
0
论坛币
827 个
通用积分
12.7247
学术水平
2 点
热心指数
4 点
信用等级
2 点
经验
6543 点
帖子
225
精华
0
在线时间
370 小时
注册时间
2010-5-17
最后登录
2024-4-16

楼主
skytreee 发表于 2014-1-13 17:27:40 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
R作图很白痴,想问各位大侠,如何用R画出如下图像,需要满足如下条件:
(1)是两个时间序列(或多个)显示在同一个图形中;

(2)在图形中标示出红线代表UCPI,蓝线代表CCPI。
在此谢谢各位了!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:时间序列 CCPI 各位大侠 CPI UCP 标示 如何

沙发
jgchen1966 发表于 2014-1-13 21:12:19
最简易matplot()
鹑居鷇食,鸟行无彰

藤椅
cnzxcxt1 学生认证  发表于 2014-1-14 02:49:47
楼上正解,或者你先画一个,另外一个用lines加上就行了

板凳
trier2006 发表于 2014-1-14 08:08:45
cnzxcxt1 发表于 2014-1-14 02:49
楼上正解,或者你先画一个,另外一个用lines加上就行了
没错
最好的医生是自己,最好的药物是时间……

报纸
skytreee 发表于 2014-1-14 11:18:09
jgchen1966 发表于 2014-1-13 21:12
最简易matplot()
研究了一上午,还是没弄明白用matplot()怎么做,能不能详细点把代码也加上。具体参考如下图片,原数据也附上了。谢谢!

QQ截图20140113171813.png (7.83 KB)

QQ截图20140113171813.png

CPI.xlsx
下载链接: https://bbs.pinggu.org/a-1475026.html

15.92 KB

地板
skytreee 发表于 2014-1-14 12:20:45
cnzxcxt1 发表于 2014-1-14 02:49
楼上正解,或者你先画一个,另外一个用lines加上就行了
那请问怎么添加数据标签呢,如以下提供的图像所示。

7
jmpamao 发表于 2014-1-14 19:45:44
处理时间的比较麻烦
有更好的方法吗?

  1. #读取数据及日期变换
  2. dat <- read.csv("CPI.csv",header=T,stringsAsFactors=F)
  3. date=matrix(unlist(strsplit(dat$obs,"M")),ncol=2,byrow=T)
  4. date=paste(date[,1],date[,2],"01",sep="-")
  5. date=as.Date(date,"%Y-%m-%d")


  6. #画图及画坐标(坐标近似处理把每年都当365天)
  7. matplot(date,dat[,c(2,3)],type="l",ylab="ccpi-ucpi",xaxt="n",col=1:2,lwd=1)
  8. legend(11500,140,colnames(dat)[-1],col=1:2,lwd=1)


  9. axis.Date(1,at=seq(date[1],date[length(date)],by=(date[length(date)]-date[1])/14),labels=F,tcl=-0.5)
  10. axis.Date(1,at=seq(date[1],date[length(date)],by=(date[length(date)]-date[1])/56),labels=F,tcl=-0.25)
  11. axis.Date(1,at=seq(date[1]+200,date[length(date)],by=365),labels=unique(format(date,"%y")),tcl=0)
复制代码
matplot.jpeg



8
skytreee 发表于 2014-1-20 16:15:04
jmpamao 发表于 2014-1-14 19:45
处理时间的比较麻烦
有更好的方法吗?
谢谢~我主要想知道每个变量的标签是怎么加上的,真的没看懂。。能不能简单点??

9
jmpamao 发表于 2014-1-20 21:43:53
skytreee 发表于 2014-1-20 16:15
谢谢~我主要想知道每个变量的标签是怎么加上的,真的没看懂。。能不能简单点??
首先,你的数据 日期为“2010M01"这种形式,得转换为2010-01-01,才能变为一个具体的数值, 年和月不是一个具体的值。

画图的时候,先把x轴空着,再画主轴线,14等分, 再画副轴线,14*4等分。最后是标示年。感觉居中就OK

10
skytreee 发表于 2014-1-22 15:49:28
jmpamao 发表于 2014-1-20 21:43
首先,你的数据 日期为“2010M01"这种形式,得转换为2010-01-01,才能变为一个具体的数值, 年和月不是一 ...
谢谢~~问题已解决!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 03:49