同花顺股票分数可视化 | R爬虫可视化第3季
欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!
本文作者:天善智能社区专家徐麟
天善智能社区地址:https://www.hellobi.com/
往期推荐:
卫视实时收视率对比 | R爬虫&可视化第1季
当古代文人参加“中国好诗人”节目 | R爬虫&可视化第2季
前言
前两期的R爬虫&可视化专题中,与大家分别分享了关于电视台收视率以及诗词的爬取和可视化的内容,得到了大家许多的反馈,希望在今后的内容中能够不断提高。
第三期的专题中,会与大家聊聊非常火的股市,关于本期内容,引用一句非常经典的话“我们不生产数据,我们只是数据的搬运工”。影响股市大盘涨跌的因素非常多,到了个股走势就更加扑朔迷离,所谓“股市有风险,投资需谨慎”,本文只是与大家分享一些爬虫&可视化的内容,不能作为大家选股的依据。
相关Package
## 字符串处理、汇总数据
library(plyr)
library(stringr)
library(sqldf)
## 爬虫相关
library(RCurl)
library(XML)
## 读取数据
library(data.table)
## 数据可视化
library(ggplot2)
library(ggthemes)
library(ggradar)
##markdown文件生成
library(knitr)
library(rmarkdown)
爬取数据
我们爬取了同花顺当天对股票的打分,同花顺作为一个专业机构,每天对于个股都会有技术面、资金面、消息面、行业面、基本面等五个方面的打分。我们会分别爬取这五部分的分数,并计算其总分。
爬取代码如下:
url <- paste('http://doctor.10jqka.com.cn/',substr(point$rcode[i],1,6),'/',sep='')
temp <- getURL(url,.encoding='utf-8')
doc <-htmlParse(temp)
points <- getNodeSet(doc,'//div[@class="chart_base"]/
div[@class="column_3d"]/div[@class="label"]')
points <- sapply(points,xmlValue)
point$technical[i] <-as.numeric(substr(points[1],1,3))
point$funds[i] <-as.numeric(substr(points[2],1,3))
point$message[i] <-as.numeric(substr(points[3],1,3))
point$trade[i] <-as.numeric(substr(points[4],1,3))
point$basic[i] <-as.numeric(substr(points[5],1,3))
point$level[i] <-sapply(getNodeSet(doc,'//span[@class="cur"]'),xmlValue)
数据展示
首先看一下各主要行业分数的盒型图:
ggplot(data=point_total,aes(x=area,y=total_num))+geom_boxplot()+
theme_economist()+ggtitle("主要行业得分分布图")+
theme(axis.text.x =element_text(size=7.85),
plot.title =element_text(hjust=0.5,size=25))
针对某一行业,我们选择其中一部分对比其雷达图:
p <- ggradar(plot.data = subset(point_total,select=c('name','技术面','资金面','消息面','行业面','基本面'))[1:5,],grid.max=10,grid.mid=5,
legend.text.size=7,background.circle.transparency=0)+theme_wsj()+theme(panel.grid=element_blank(),
axis.line = element_blank(),
axis.text = element_blank())
print(p)
MARKDOWN输出
下面我们用RMarkdown实现将多只股票的分数变化面积图批量输出的功能:
```{r pressure,echo=FALSE,fig.width=15,fig.height=5}
library(reshape2)
library(ggplot2)
library(ggthemes)
library(stringr)
point_total <- read.csv('D:/index/point_total.csv',
header =TRUE)
point_total$name<- gsub(" ","",point_total$name)
point_total <- subset(point_total,name %in% c(
'****','****','****','****','****','****','****'
))
point_total$dt<- substr(point_total$dt,1,5)
index_name <- unique(point_total$name)
for(i in1:length(index_name)){
point = subset(point_total,name == index_name[i])
print(gsub(" ","",as.character(index_name[i])))
names(point)[2:6] <- c('技术面','资金面','消息面','行业面','基本面')
point$sum_point<- apply(point[,2:6],1,sum)
point$com1<- paste(point$sum_point,sep='')
point$com2<- paste(point$paiming,sep='')
point_view <- melt(point[,c(2:6,9)],id.vars ='dt',variable.name ='分面')
p <- ggplot()+geom_area(aes(x=dt,y=value,fill=分面,group=分面),
data=point_view)+
geom_text(aes(x=dt,y=sum_point+2,label=com2),data=point,size=4)+
geom_text(aes(x=dt,y=sum_point+4,label=com1),data=point,size=4)+
theme_wsj()+theme(
panel.grid.major = element_blank()
)
print(p)
}
```
输出效果如下:
R针对股票可以做更加细致的分析,如quantmod包可以直接获得股票的每日收盘价等重要信息。比如如下两行代码就可以画出让人望尘莫及,买1手都要斥巨资的贵州茅台的K线图(需要注意的是R中使用的是美股K线图,红绿表示与A股相反)
getSymbols("600519.ss",src="yahoo",from="2017-01-01", to='2017-10-30')
chartSeries(`600519.SS`)
因为本人并不炒股,对股市没有仔细的研究,所以本文只是做一些爬取&可视化的内容,希望对股票有深入研究的朋友能够与我交流,共同学习。
欢迎关注天善智能www.hellobi.com,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!
本文作者:天善智能社区专家徐麟
同花顺股票分数可视化 | R爬虫可视化第3季相关推荐
- 近三十年6000部国产电视剧告诉了我们些什么 | R爬虫可视化第四季
欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! 本文作者:天善智能社区专家徐麟 天善智能社区地址:https://www.hel ...
- R爬虫可视化第四季-近三十年6000部国产电视剧告诉了我们些什么
前言: 距离上次发公众号有将近一个月的时间,在此十分感谢大家对于本公众号的大(mei)力(you)支(qu)持(guan).在这里要感谢鹅厂给了本公众号原创声明功能邀请,从本期开始大家可以直接在文章下 ...
- 卫视实时收视率对比 | R爬虫可视化第1季
感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! 本文作者:天善智能社区专家徐麟 天善智能社 ...
- Python爬虫可视化第1季-城市旅游数据分析
前言: 本着跟大家一同探讨学习的态度,今后几期文章会更新一些用python实现爬虫&可视化的文章.Python对于本人来讲也是一个在逐渐学习掌握的过程,这次的内容就从旅游开始讲起,进入正文前首 ...
- R语言可视化散点图(scatter plot)图、为图中的部分数据点添加标签、ggrepel包来帮忙
R语言可视化散点图(scatter plot)图.为图中的部分数据点添加标签.ggrepel包来帮忙 目录
- R获取股票数据并进行进行可视化分析
R获取股票数据并进行进行可视化分析 # 加载依赖的包 library(quantmod) library(ggplot2) library(magrittr) library(broom) # 设置计 ...
- Cicero:一个单细胞染色质可及性实验可视化R包
本文可在http://xuzhougeng.top/免费阅读原文 Cicero是一个单细胞染色质可及性实验可视化R包.Cicero的主要功能就是使用单细胞染色质可及性数据通过分析共开放去预测基因组上顺 ...
- Python大作业——爬虫+可视化+数据分析+数据库(爬虫篇)
相关链接 Python大作业--爬虫+可视化+数据分析+数据库(简介篇) Python大作业--爬虫+可视化+数据分析+数据库(可视化篇) Python大作业--爬虫+可视化+数据分析+数据库(数据分 ...
- r语言siggenes包_初探R语言可视化交互式包plotly——旭日图(Sunburst Chart)
ploylt原来是一款用来做数据分析和可视化的在线平台,后来有人开发了一些语言(Python.R.Matlab等)的API,在R里就是plotly包了.plotly已经发布在CRAN上了,要想安装,仅 ...
最新文章
- make太慢了,加快编译速度的方法 make -j
- kvm虚拟机命令梳理
- 【控制】多智能体系统总结。5.系统合并。
- Linux shell文件测试运算符
- linux ls 配色方案,ubuntu 更改ls配色方案
- 深入浅出学Hive:Hive优化
- php繁体输出,PHP输出控制功能在简繁体转换中的应用
- 2场直播丨MySQL 数据库最常见的 6 类故障的排除方法、2020数据技术嘉年华·金融峰会暨数据库大咖讲坛(第4期)...
- 关于卸载vmwave虚拟机后键盘不能输入的问题
- update core.php,WordPress更新失败-这通常是由于文件权限不一致所致。:wp-admin/includes/update-core.php...
- 如何:在 Windows 窗体 ListView 控件中启用平铺视图 【转载】
- Spring IOC 概述
- Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..
- python第五章自己的笔记总结(6)
- C语言程序设计 | 猜数字游戏
- Epson LQ1600K3+ 打印区域
- Google奥运会彩蛋,你确定不来参加一下吗?
- Lombok requires enabled annotation processing
- 放鸡蛋问题:相同元素分配到相同的空间
- mfs java_mFS文件系统 - java学者 - OSCHINA - 中文开源技术交流社区
热门文章
- 面试官很牛,逼我尿遁
- 优秀课件笔记旅游需求预测Forecast of Tourism DemandsChapter Demands
- 台式电脑怎么更换计算机明,电脑上面的cpu能换吗_cpu怎么更换(台式机、笔记本)...
- android o vts测试项,安卓官方测试工具vts
- python循环绘制六角星_python画五角星和六角星程序
- jaxb xsd java_jaxb 这个资料,可以吧后缀为.xsd的文件,转化成java类使用, 方法在 里面有详细的说 Develop 238万源代码下载- www.pudn.com...
- SourceTree 免注册免登陆使用方法
- [架构之路-139]-《软考-系统架构设计师》-企业信息化战略与实施:信息系统生命周期、企业信息化与电子商务、企业应用集成
- 2019年8月总结:思考
- Dede采集插件-织梦采集器无需授权码免费