文档章节

用R语言画动画片 炫酷技能get

一只小桃子
 一只小桃子
发布于 2014/06/10 14:18
字数 455
阅读 423
收藏 1
点赞 0
评论 1
#金融分析包,用来下载股票数据。下载下来是zoo对象,我先转成了dataframe
library(quantmod)
#Apple的数据
getSymbols("AAPL",src="yahoo",from="2013-01-01",to="2014-06-09")
APPL <- get("AAPL")
dataA <- as.data.frame(coredata(APPL))
dataA["date"] <- index(APPL)

#微软
getSymbols("MSFT",src="yahoo",from="2013-01-01",to="2014-06-09")
MESF <- get("MSFT")
dataM <- as.data.frame(coredata(MSFT))
dataM["date"] <- index(MSFT)

#oracle
getSymbols("ORCL",src="yahoo",from="2013-01-01",to="2014-06-09")
ORCL <- get("ORCL")
dataO <- as.data.frame(coredata(ORCL))
dataO["date"] <- index(ORCL)

#google
getSymbols("GOOGL",src="yahoo",from="2013-01-01",to="2014-06-09")
GOOGL <- get("GOOGL")
dataG <- as.data.frame(coredata(GOOGL))
dataG["date"] <- index(GOOGL)

#统计有多少行数据
totalLength <- length(dataG[,1])
#统计最大值
maxp <- c(max(dataA[,6]),max(dataM[,6]),max(dataO[,6]),max(dataG[,6]))
maxfinal <- max(maxp)
companyNames <- c("apple","ms","oracle","google")

library(ggplot2)
#画出数据第几行的图片
drawGG <- function(index){
  temp <- data.frame("company"=companyNames,
                     "price"=c(dataA[index,6],dataM[index,6],dataO[index,6],dataG[index,6]),
                     "volume"=c(dataA[index,5],dataM[index,5],dataO[index,5],dataG[index,5]))
  ggplot(temp,aes(company,price))+geom_bar(aes(fill=company),show_guide=F,stat="identity")+
    labs(title=dataA[index,7],color="grey")+ylim(0,maxfinal)
}
#重复画多少次
drawRepeat <- function(totalLength){
  for (i in 1:totalLength){
    print(drawGG(i)) 
  }
}

library(animation)
#开始画动画 nmax表示画多少张图,经实验 最多2000,取大了会报错
#ffmpeg为制作视频的软件,下载解压,给出地址就可以了。mp4格式经实验不行,这里用了avi
#-b 300k  表示图片质量,越大视频越清晰
oopts = ani.options(interval = 0.1,nmax=totalLength,ffmpeg = "D:/programfiles/ffmpeg/ffmpeg/bin/ffmpeg.exe")
saveVideo({
  drawRepeat(totalLength)
},video.name = "test.avi", other.opts = "-b 300k")
ani.options(oopts)

#还可以画GIF ,SWF 但需要相应的软件支持,先安装ImageMagick,然后画GIF
saveGIF({
    ani.options(nmax = 30,convert = shQuote('D:/programfiles/imagemagick/ImageMagick-6.8.9-3/convert.exe'))
    drawRepeat(30)
}, interval = 0.1, movie.name = "test.gif", ani.width = 600, ani.height = 600)

效果图:



开源中国上传不了250k的图片 gif我就不传上来了


© 著作权归作者所有

共有 人打赏支持
一只小桃子

一只小桃子

粉丝 205
博文 108
码字总数 115987
作品 0
武汉
程序员
加载中

评论(1)

㊙橘子微苦
㊙橘子微苦
GET or OUT!2018年这六个“爆款”IT技能将成为加薪跳槽利器

这是一个最好的时代,也是一个最糟糕的时代,这句话对于IT人来说尤其适用,如果你没有找到正确的技能路径并持续学习,很快就会被风起云涌的科技潮流和时代抛弃,结局比下岗工人更糟。 近日,...

张霖
01/01
0
0
传说中的马尔科夫链到底是个什么鬼?

话说自从接触数据分析以来,就不断在各种文献和大牛的文章里看到马尔科夫链这种东西。对于像小编这种经管出身、半路出家的数据爱好者而言,老是让这种一头雾水的名词出现在自己眼前又无可奈何...

R语言中文社区
02/27
0
0
R语言入门 – 什么是R语言,为什么选择R语言用于机器学习或数据挖掘

  R语言最近在TIOBE排名上取得了不小的进步,上升到了第13名。因为机器学习的火爆的程度和R语言特殊的语法,使得它的关注度越来越高。好多人对于R语言的特性和语法不太了解,而因我在上学的...

全栈开发
03/06
0
0
给我两小时!带你发动R语言数据挖掘的高铁,一往直前!

主题: 数据挖掘快速上手之R语言实践 随之DT时代的到来,传统的统计分析方法已经不能解决海量高维数据,如何运用数据挖掘手段对复杂数据进行数据处理、数据可视化、数据建模及模型解读是每一...

李晓文
2017/04/18
0
0
R语言可视化学习笔记之相关矩阵可视化包ggcorrplot

基于ggplot2包以及corrplot包的相关矩阵可视化包ggcorrplot,ggcorrplot包提供对相关矩阵重排序以及在相关图中展示显著性水平的方法,同时也能计算相关性p-value 安装方法就不提了,不懂的可...

R语言中文社区
01/25
0
0
【沙龙资料】模型效果评估及优化—天善智能数据之美深圳站谢佳标老师分享

本文为谢佳标老师在天善智能数据之美深圳站的分享,更多精彩内容可以参加谢佳标老师系列课程:数据分析与挖掘R语言十三式,打造R全栈专家 1、模型效果评估常用方法 2、混淆矩阵 3、ROC曲线绘...

天善智能
06/12
0
0
R语言学习笔记之相关性矩阵分析及其可视化

计算相关矩阵 R内置函数 cor() 可以用来计算相关系数:cor(x, method = c("pearson", "kendall", "spearman")),如果数据有缺失值,用cor(x, method = "pearson", use = "complete.obs")。 ...

R语言中文社区
02/05
0
0
Rserve的R语言客户端RSclient

R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已...

zh119893
2014/05/04
0
0
谈谈R中的乱码(三)

前面讲过,R 中字符向量可以有多种编码。一般情况下,对于混合编码,R 都能很好的自动处理。例如: x1 <- '中国'x2 <- iconv(x1, 'GB2312', 'UTF-8') == 判断也没问题 x2 == '中国' [1] TRU...

R语言中文社区
02/08
0
0
异步社区本周(4.23-4.29)半价电子书

点击关注 异步图书,置顶公众号 每天与你分享 IT好书 技术干货 职场知识 《R语言编程指南》 任坤 著 点击封面购买纸书 R 语言是从事数据科学和统计学需要的工具之一。强大且复杂的 R 对于初学...

异步社区
04/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

利用世界杯,读懂 Python 装饰器

Python 装饰器是在面试过程高频被问到的问题,装饰器也是一个非常好用的特性, 熟练掌握装饰器会让你的编程思路更加宽广,程序也更加 pythonic。 今天就结合最近的世界杯带大家理解下装饰器。...

p柯西
22分钟前
0
0
Xshell登录阿里云服务器ECS

Xshell登录阿里云服务器ECS 1. 参考资料: 1). 《阿里云服务器怎么用?阿里云服务器使用教程》 链接:http://www.cr173.com/html/50758_1.html 2). eagle-zhang的CSDN博客《Xshell连接不上阿...

SuShine
32分钟前
1
0
IDEA中的HTTP Client Editor测试API

在前后端分离项目,前后端通过api进行通信。如果用postman免费版进行api测试的话,由于无法保存测试脚本到文件,不方便前端查看。 你可以选择付费版。也可以利用IDEA自带的HTTP Client Edito...

hutaishi
34分钟前
0
0
解决“只能通过Chrome网上应用商店安装该程序”的方法

摘要 : 最近有些用户反映某个Chrome插件在安装的时候,提示“只能通过Chrome网上应用商店安装该程序”,为了解决这一问题,Chrome插件网带来了相关的解决方法。 某些用户在Chrome插件网下载了...

沧海一刀
35分钟前
0
0
通过UNIX域套接字传递文件描述符

  传送文件描述符是高并发网络服务编程的一种常见实现方式。Nebula 高性能通用网络框架即采用了UNIX域套接字传递文件描述符设计和实现。本文详细说明一下传送文件描述符的应用。 1. TCP服务...

Bwar
39分钟前
0
0
python操作Excle

# -*- coding: utf-8 -*-from openpyxl import load_workbook, Workbook#index:第几个sheet页,第一个sheet页的index为0def readExcle(filename,index): # 加载excle文件 wb = l......

淺陌离殇
40分钟前
0
0
Apache爆日志文件漏洞

全球使用最广泛的Web服务器Apache近日被爆出了一个安全漏洞,该漏洞可能导致攻击者控制服务器。 该漏洞包含在mod_rewrite 模块中的do_rewritelog()日志函数中。由于该函数还无法完全过滤写入...

问题终结者
今天
0
0
阿里巴巴内部开发手册

现代软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有...

zbbmaster
今天
0
0
34.任务计划cron chkconfig systemctl管理服务 unit target

10.23 linux任务计划cron 10.24 chkconfig工具 10.25 systemd管理服务 10.26 unit介绍 10.27 target介绍 10.23 linux任务计划cron: 在linux中任务计划是必不可少的,因为可能我们凌晨的时候...

王鑫linux
今天
0
0
logback.xml for spring boot

logback.xml config <?xml version="1.0" encoding="UTF-8"?><configuration> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.Colo......

qwfys
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部