热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在ggplot2中绘制xts?-Howtoplotxtsinggplot2?

Igotthisplot我得到了这个阴谋usingthiscode使用这个代码library(xts)library(zoo)plot.new()par(mai

I got this plot

我得到了这个阴谋

enter image description here

using this code

使用这个代码

library(xts) 
library(zoo)
plot.new()
par(mai=c(2, 2, 1, 1)) 
plot(nats[,2], ylim=c(0, 2.5), 
     xlab = "", ylab="", main="",  major.ticks="months", 
     major.format="%d-%b-%Y", minor.ticks=FALSE, las=1, cex.axis=0.8) 
points(nats[rans,2], col="darkgrey", pch=16, cex=0.5) 
points(M1[rans], col="red", pch=16, cex=0.5) 
points(M2[rans], col="blue", pch=16, cex=0.5) 
points(M3[rans], col="green", pch=16, cex=0.5) 
legend(x="topright", 
       legend=c("a", "Actual value", "M1","M2","M3"), 
       col=c("Black", "Grey", "Red","Blue","Green"), 
       lwd=1, lty=c(1,NA,NA,NA, NA), 
       pch=c(NA,16,16,16,16), merge=FALSE, cex=0.6)

DATA

数据

set.seed(123) 
date <- as.Date(seq(as.Date("2003-01-01"), 
                    as.Date("2003-05-31"), by = 1), format="%Y-%m-%d")
a <- runif(151, 0.005, 2.3) 
df <- data.frame(date, a)

#select 30 random samples 
rans<-sample(length(df$a), 30) 
df$a.rm <- df$a

#set the values for the selected rows as NA 
df[rans, 3]<-NA

#reorder columns 
df <- subset(df, select=c(1,3,2))

# test 3 methods for filling NA 
nats<-xts(df[,-1], as.POSIXct(df$date))
M1<-na.locf.default(nats[,1])
M2<-na.approx(nats[,1])
M3<-na.spline(nats[,1]) 

Any suggestion how to plot it using ggplot2 will be appreciated?

有什么建议可以用ggplot2来设计吗?

1 个解决方案

#1


4  

Thanks to @jlhoward's answer, I used fortify() function to create the plot above using ggplot2

感谢@jlhoward的回答,我使用了fortify()函数,使用ggplot2创建了上面的情节

library(ggplot2) 
nats1 <- fortify(nats)
M1.1 <- fortify(M1)
M2.2 <- fortify(M2)
M3.3 <- fortify(M3)
cols <- c("a"="black", "Actual value" = "black","M1"="red","M2"="blue", "M3" = "green") 
ggplot(data=nats1, aes(x=Index, y=a))+
       geom_line(aes())+
       geom_point(data=nats1[rans,], aes(x=Index, y=a,   color="Actual value"),  size=2)+ 
       geom_point(data=M1.1[rans,], aes(x=Index, y=a.rm, color="M1"), size=2)+ 
       geom_point(data=M2.2[rans,], aes(x=Index, y=a.rm, color="M2"), size=2)+ 
       geom_point(data=M3.3[rans,], aes(x=Index, y=a.rm, color="M3"), size=2)+ 
       scale_colour_manual(name=" ", values=cols) 

推荐阅读
  • oracle主键和唯一索引,Oracle 主键、唯一键与唯一索引的区别
    如果我们让主键约束或者唯一键约束失效,Oracle自动创建的唯一索引是否会受到影响?SQLdroptabletestpurge;Tabledroppe ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • 在本教程中,我们将看到如何使用FLASK制作第一个用于机器学习模型的RESTAPI。我们将从创建机器学习模型开始。然后,我们将看到使用Flask创建AP ... [详细]
  • 这篇文章主要讲解了“怎么用Python写一个电信客户流失预测模型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入, ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • Givenasinglylinkedlist,returnarandomnode'svaluefromthelinkedlist.Eachnodemusthavethe s ... [详细]
  • 一.元祖类型 (tuple)1.什么是元祖?用途:用于存放多个值,当存放的多个值只有读的需求没有改变的需求时,用元祖最合适.定义方式:在()内用逗号分隔开的多个任意类型的值t(1, ... [详细]
  • 对于我当前的需求,我需要绘制一些我从mongodb中获取的数据的图表,并且我正在使用reactPo ... [详细]
author-avatar
鱼儿玩玩
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有