数据可视化3

利用python的tushare库获取在线数据,绘制股票k线图 可视化是python的一个强大功能,也是金融数据分析中重要的工具。本文给出的python代码可以用于绘制贵州茅台(600519)在2019年1月1日到2019年12月31日的周k线图。 注意:本文使用的是tushare的pro接口,利用该接口获取数据需要一定积分,积分可以在注册后通过完成任务获取。附官网注册链接:Tushare大数据社区。高校学生或老师也可以联系社区管理员进行认证,认证完成即可获得一定积分,然后就可以使用一些(我觉得还挺多的)里面的数据啦。我的认证只花了不到24h,很方便! impo. 阅读详情

本文将围绕“股票数据读取与K线图绘制”展开综合案例实战,带你掌握金融数据分析与可视化的核心技能。我们将学习如何通过Python工具从网络API获取股票历史数据,并清洗整理成结构化格式。重点演示如何绘制专业的K线图,结合成交量、均线等指标,直观展现股票价格趋势、波动及市场情绪。通过案例实操,你将深入理解K线图的开盘价、收盘价、最高最低价等要素,同时提升数据可视化在真实业务场景中的应用能力,为投资分析或量化交易打下基础。

1.初步尝试——股票数据读取与初步尝试

(1)股票数据库:Tushare库的安装与使用

data为交易日期;open为开盘价;close为收盘价;high为最高价;low为最低价;volume为成交量;code为股票代码。

(2)绘制股价走势图

已经有了股价数据后,我们可以通过可视化的方式将其展示出来,这里我们首先利用set_index()函数将日期设置为行索引,这样方便等会直接用pandas库进行绘图,代码如下:

通过pandas绘图的相关知识点来进行图形绘制,代码如下。因为在pandas库中plot()函数默认绘制的是折线图,所以直接写plot()即可,不需要传入kind参数。

此外在金融领域,通常用收盘价作为当天价格来绘制股价走势图,因此这里选择的是close这一列。

如果想给图片加一个标题,在pandas库中使用可以在plot()可以在里面传入一个title参数,代码如下,注意因为标题是中文内容,所以加入两行代码防止中文乱码。

上面使用的是pandas库中的plot()函数,pandas库其实是集成了Matplotlib库的一些功能,如果有的读者想直接用Matplotlib库进行股价走势画图,可以采用如下代码:

2.综合实战——股票K线图绘制

(1)股票K线图基本知识

一个实际中的股票K线图如下图所示(这个是“贵州茅台”股票的日线级别的K线图):

没有接触过股票的读者可能会被里面的各个柱状图和折线图搞得一头雾水,而这些图形其实都是通过一些很基础的数据绘制而成,这一节便主要来科普下股票K线图的基本知识。

这些柱状图,通常称之为“K线图”,是由股票的四个价格来绘制的:开盘价(当天上午9点半开始交易时的价格)、收盘价(当天下午3点结束交易时的价格)、最高价(当天股价波动中的最高价)、最低价(当天股价波动中的最低价),简称“高、开、低、收”四个价格。

如下图所示,根据这四个价格便可以绘制出红色和绿色的K线图,因为形似蜡烛,因此也常被称之为蜡烛图。K线图分为两种,如果当天的收盘价高于开盘价,也就是说当天的价格上涨,则称之为阳线,通常绘制成红色;反之如果当天的收盘价低于开盘价,也就是说当天的价格下跌,则称之为阴线,通常绘制成绿色。补充说一句,在美国,反而是红色代表跌,绿色代表涨。

这里再解释下均线图,也就是那些折线图的绘制原理。均线分为5日均线(通常称之为MA5)、10日均线(通常称之为MA10)、20日均线(通常称之为MA20)等,其原理就是将股价的收盘价求均值,例如5日均线就是最近连续5个交易日收盘价之和的平均值,具体的计算公式如下,其中Close1为当天的收盘价,Close2为前一天的收盘价,其余依次类推。

MA5 = (Close1 + Close2 + Close3 + Close4 + Close5)/5

把每个5日均线的值连成一条平滑的曲线就是5日均线图了,同理10日均线图和20日均线图也是类似的原理,这些均线图也就是我们在这一小节最开始看到图中的那些折线图。

了解了股票K线图的基本知识后,下面我们就来进行K线图的绘制工作。

(2)绘制股票K线图

1.安装绘制K线图的相关库:mpl_finance库

2.引入绘图相关库

3. 通过Tushare库获取股票基本数据

4.日期格式调整及表格转换

5.绘制K线图

candlestick_ochl()函数的参数:

    ax:绘图Axes的实例,也就是画布中的子图;

    df_arr:股价历史数据;

    width:图像中红绿矩形的宽度;

    colorup:收盘价格大于开盘价格时矩形的颜色;

    colordown:收盘价格低于开盘价格时矩形的颜色;

    alpha:矩形的颜色的透明度;

6.绘制K线图及均线图

有了K线图之后,我们再来补上均线图,这里我们主要补上5日均线和10日均线图,首先我们通过如下代码构造5日均线和10日均线数据:

7.绘制股票K线图、均线图、成交量柱状图

其中第1-2行代码绘制多图相关知识点先构造一个画布和两个子图,这里同时设置sharex参数为True,这样两张子图就可以共用一个坐标轴了;第4-13行绘制第一张子图,其中在子图中设置标题或者坐标轴标题得使用set_title()、set_ylabel()、set_xlabel()这样的函数;第15-20行绘制第二张子图:成交量图,其中df_arr[:,0]表示二维数组的第1列,也即日期那列,df_arr[:,5]表示二维数组的第6列,也即成交量那列数据,然后通过bar()函数绘制成柱状图。

8.结果对比

我们可以和新浪财经网上的实际图像对比一下,如下图所示,发现通过Python绘制的K线图相关图片和网上的图片基本一致。

Mschart asp.net 画K线图 用Mschart控件在asp.net网页上画股票的K线图 希望对你有帮助 立即下载

相关推荐

使用amCharts制作的基于c# wpf的股票K线图源码

使用amCharts制作的基于c# wpf的股票K线图源码 开源可修改成自己要的效果

用tushare和mplfinance画K线图

用tushare和mplfinance画K线图

dycsss的博客 1027

C# .net 股票 K线图 指标 画线 网上多个版本合集

C# .net 股票 K线图 指标 画线 网上多个版本合集 都在有源代码的 大家可以随便下来看看

python+tushare+mplfinance绘制一只股票的K线图

获取一个股票的某段时间内的开盘价、最高价、最低价、收盘价、成交量绘制出K线图及成交量图。 import tushare as ts import pandas as pd import matplotlib.pyplot as plt import mplfinance as mpf from datetime import datetime ts.set_token('you token') pro = ts.pro_api() df = pro.daily(ts_code='000001.SZ',

zhaojieming1990的博客 1918

Cadence仿真实战:从零构建高精度带隙基准电压源

本文是一份详细的Cadence仿真实战指南,指导读者从零开始构建高精度带隙基准电压源。文章首先解释了带隙基准电压源稳定输出电压的原理,然后逐步演示了在Cadence Virtuoso环境中如何搭建测试电路、测量关键温度系数、计算并搭建核心电路,并通过参数扫描和迭代调优来驯服温度漂移,最终实现低漂移的基准电压输出。

weixin_29207533的博客 242

多GPU时代的虚拟内存革命:CUDA VMM API的跨设备协同设计哲学

本文深入探讨了NVIDIA CUDA VMM API在多GPU系统中的虚拟内存管理革命,解决了传统Peer Access的显存碎片化和同步开销问题。通过地址-内存解耦、按需映射和精细权限控制,VMM API为分布式训练提供了高效的内存协同方案,显著提升大模型训练性能。

weixin_29251337的博客 534

基于D3的数据可视化学习

基于D3的数据可视化学习 近年来,可视化越来越流行,许多报刊杂志、门户网站、新闻媒体都大量使用可视化技术,使得复杂的数据和文字变得十分容易理解。而 D3 正是数据可视化工具中的佼佼者,基于 JavaScript 开发,项目托管于 GitHub。从 D3 诞生以来,不断受到好评,在 GitHub 上的项目仓库排 行榜也不断上升。本项目的目的在于提供一个简单易懂的入门教程,希望读者能够喜欢。 代码仓库 简介与安装 D3 的全称是(Data-Driven Documents),顾名思义可以知道是一个被数据驱

weixin_45377668的博客 4090

Podman修改镜像源教程(附最新docker镜像源)

Podman修改镜像源教程(附最新docker镜像源)

道长的博客 4141

数据可视化基础实验:D3数据可视化

D3 总共提供了12个布局:饼状图(Pie)、力导向图(Force)、弦图(Chord)、树状图(Tree)、集群图(Cluster)、捆图(Bundle)、打包图(Pack)、直方图(Histogram)、分区图(Partition)、堆栈图(Stack)、矩阵树图(Treemap)、层级图(Hierarchy)。D3 的全称是(Data-Driven Documents),是一个被数据驱动的文档,其实就是一个 JavaScript 的函数库,使用它主要是用来做数据可视化的。再对每个 元素,添加。

Az_Wu的博客 1272

spring boot 集成cas(一) 服务端搭建

简单点就是统一服务认证,多个系统一次登录。俗称单点登录。

慕孑晨的博客 1956

PCL 将对象模板与点云对齐【2025最新版】

PCL模版匹配算法的使用案例,博客长期更新,本文最近更新时间为:2025年1月18日。

点云侠的博客 5378

D3数据可视化基础

script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> 但使用的时候要保持网络连接有效,不能再断网的情况下使用。的元素,它可以结合使用直线,曲线等来制作各种不规则的复杂的图形。的第一个参数是监听的事件,第二个参数是监听到事件后响应的内容,第二个参数是一个函数。这里要用到的叫做弧生成器,能够生成弧的路径,因为饼图的每一部分都是一段弧。中一个十分重要的概念。),是用于描述二维矢量图形的一种图形格式,是由万维网联盟制定的开放标准。

2201_75718135的博客 995

【vsomeip3 教程】SOME/IP中间件去抖策略全解析

本文探讨了在SOME/IP中间件中实现Debounce(去抖动)机制的必要性和实现原理。文章首先分析了中间件层进行Debounce的四大动机:多订阅者共享收益、语义显式化、协议噪声屏蔽和入口处背压控制。接着详细阐述了Debounce的底层原理,包括变化检测机制(ignore和mask的应用)、时间门控策略(interval的两种时间基准)以及超时补发机制,并通过表格清晰展示了不同参数组合的效果和适用场景。最后,文章提出了工程落地的具体方法,包括策略选型、ignore/mask的设计方法论以及分层验证调试的实

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 232

【无标题】数据可视化入门 D3数据可视化基础

在当今数字化时代,数据已成为驱动决策、洞察趋势和揭示规律的核心要素。然而,海量的数据往往以复杂、抽象的形式存在,如何将这些数据转化为易于理解和解读的信息,成为了各领域研究和实践中的关键挑战。数据可视化作为一种强大的工具,应运而生,它通过直观的图形、图表和交互界面,将数据的深层含义以可视化的方式呈现出来,使人们能够更快速、准确地把握数据背后的信息。在众多数据可视化工具中,Tableau和D3.js无疑是两颗璀璨的明星。

2301_77967808的博客 845

uniapp:使用uni.request请求报错errMsg“:“request:fail abort statusCode:-1(uniApp使用uni.request向服务端接口发起请求失败报错)

解决request请求报错request:fail abort statusCode:-1,Uniapp打包到app后报错request:fail abort statusCode:-1,uniapp使用uni.request请求报错{“errMsg“:“request:fail abort statusCode:-1“}的解决办法,不是SSL证书问题,跳过ssl验证,解决https问题,Uniapp报错,小程序报错(含https解决方案)(真机预览问题)uni-app打包后不发请求的原因,uni-app真

✅ 精选推荐文章 3580

从0到全栈:C#/.NET/.NET Core终极学习路线——2025年开发者必修的12个阶段与30个实战项目

【代码】从0到全栈:C#/.NET/.NET Core终极学习路线——2024年开发者必修的12个阶段与30个实战项目。

墨夶的博客 2042

数据可视化基础实验二之D3数据可视化基础

D3 总共提供了12个布局:饼状图(Pie)、力导向图(Force)、弦图(Chord)、树状图(Tree)、集群图(Cluster)、捆图(Bundle)、打包图(Pack)、直方图(Histogram)、分区图(Partition)、堆栈图(Stack)、矩阵树图(Treemap)、层级图(Hierarchy)。D3会自动对两种颜色(红色和铁蓝色)之间的颜色值(RGB值)进行插值计算,得到过渡用的颜色值。on()的第一个参数是监听的事件,第二个参数是监听到事件后响应的内容,第二个参数是一个函数。

2302_77910895的博客 2136

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

数据可视化入门 D3数据可视化基础

同时,我也意识到代码的可读性和注释的重要性,因为D3的代码逻辑较为复杂,清晰的注释有助于后续的维护和优化。本次实验使用 Tableau Desktop,它基于斯坦福技术,支持多种数据源(如 Excel、SQL Server 等),可快速生成美观的图表、仪表板和报告,并支持自定义视图和布局,帮助用户展现数据关系。左边列出了超市这个表格下的三个子工作表,当我们选中一个子表时,双击,在右边区域的下部分就会显示子表的数据,还可以点击右上角的“筛选器”的“添加”,按需要进行数据过滤。

2301_81054976的博客 581

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

数据可视化基础实验:D3数据可视化基础

D3的全称是(Data-DrivenDocuments),是一个被数据驱动的文档,其实就是 一个JavaScript的函数库,使用它主要是用来做数据可视化的。本次实践主要介绍 D3一些最基本的使用方法,以及生成一些比较简单的图表。

2302_79629423的博客 794

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

数据可视化(JavaScript篇与D3篇)

数据可视化前言1、什么是数据可视化?2、数据可视化学什么?一、JavaScript篇1、可视化直方图2、二叉树3、文字树二、D3篇1、直方图2、环图(带直方图)3、力导向图4、链接MySQL数据库5、词云图 前言 1、什么是数据可视化? 2、数据可视化学什么? 注: 部分代码由我和组员共同完成 一、JavaScript篇 1、可视化直方图 (1)代码 <html> <head> <meta http-equiv="Content-Type" content="text/ht

weixin_44110969的博客 2630

Tableau数据可视化入门和D3数据可视化基础

界面的左边指示数据的来源,Tableau可以连接到本地的Excel表格,文本, Access数据库,统计文件等,也可以连接数据库服务器,例如MicrosoftSQLServer 数据库,MySQL数据库,Oracle数据库等。中间上部分显示最近打开过的工作薄,下部分显示示例工作薄,即Tableau自带 的一些工作薄,可以点击更多样本查看更多的数据图。Tableau将数据分为:数字(十进制),数字(整数),字符串,布尔,日期, 日期和时间,还有地理类型(如果数据源中有城市,省份的数据可以分配为地理类 型)。

2401_83197169的博客 1066

数据可视化基础实验其二:D3数据可视化基础

D3 总共提供了12个布局:饼状图(Pie)、力导向图(Force)、弦图(Chord)、树状图(Tree)、集群图(Cluster)、捆图(Bundle)、打包图(Pack)、直方图(Histogram)、分区图(Partition)、堆栈图(Stack)、矩阵树图(Treemap)、层级图(Hierarchy)。D3 的全称是(Data-Driven Documents),是一个被数据驱动的文档,其实就是一个 JavaScript 的函数库,使用它主要是用来做数据可视化的。再对每个 元素,添加。

ustittd的博客 926
上一篇: 数据可视化2
下一篇: 数据可视化4
blueberry189
博客等级 码龄4年 41粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值