【MATLAB第11期】#源码分享 |时间序列数据绘图,横坐标更改为时间轴 横坐标轴参数更改

  • 绘图问题解决方案
  • 1、导入数据方式(识别时间数据)
  • 2、案例展示
  • (1)打开数据
  • (2)定义时间和数据
  • (3)将时间数据转化为数值
  • (4)绘图

绘图问题解决方案


修改前

修改后

1、导入数据方式(识别时间数据)

我们知道xlsread函数无法导入时间数据,会自动删除时间数据
导入时间数据,一般需要学习以下几个函数:
(1)importdata函数
(2)readtable函数
(3)其他方法(如双击EXCEL数据,直接界面导入对应格式数据)

2、案例展示

本次展示的是readtable函数,即把double数据转化为table表格数据。

(1)打开数据

T = readtable('data.xlsx');  %打开data数据

readtable有个缺点是导入的数据标题会系统默认。
进阶学习可以了解detectImportOptions函数,可以人工修改标题。

(2)定义时间和数据

data=table2array(T(:,2));
time=table2array(T(:,1));

需要将table数据转为double数据 ,需要用table2array函数。时间数据自动转化为datetime时间格式

(3)将时间数据转化为数值

x = datenum(time) ;

datenum函数很关键 。一般绘图,横坐标为转化后的数值,纵坐标为对应数据

(4)绘图

datetick('x','yyyy-mm-dd');%  这里可以替换 datetick('x', 20);

时间格式yyyy-mm-dd自己定义,如年月可以为’yyyy-mm’
加上小时的话 ,可以私下学习一下datetick函数~

  set(gca,'XTick',x(1:1:size(x,1)))

这里是设置横坐标的间隔,可以防止时间太多,横坐标装不下去。 所以可以设置对应间隔,如1:5:N

set(gca,'XTickLabel',datestr(x(1:1:size(x,1)),'yyyy-mm-dd')  )

这里是设置横坐标时间的标签,与上面相同,间隔保持一致。
绘图代码如下:

figure()plot(x,data,'-ob','LineWidth',0.5); %datetick('x', 'yyyy-mm-dd');%  这里可以替换 datetick('x', 20); set(gca,'XTick',x(1:1:size(x,1)))set(gca,'XTickLabel',datestr(x(1:1:size(x,1)),'yyyy-mm-dd')  )grid on
axis tight;xlabel("日期")
ylabel("值")
title("绘图结果 ")

完整代码

clc,clear;
% importdata
%opts = detectImportOptions('data.xlsx')
%opts.VariableNames=[{ '时间'} ,{'数量'}]
T = readtable('data.xlsx');
data=table2array(T(:,2));
time=table2array(T(:,1));
x = datenum(time) ;
%new_x=x(1):x(end);figure()plot(x,data,'-ob','LineWidth',0.5);datetick('x', 'yyyy-mm-dd');set(gca,'XTick',x(1:1:size(x,1)))set(gca,'XTickLabel',datestr(x(1:1:size(x,1)),'yyyy-mm-dd')  )grid on
axis tight;xlabel("日期")
ylabel("值")
title("绘图结果 ")

【MATLAB第11期】#源码分享 |时间序列数据绘图,横坐标更改为时间轴 横坐标轴参数更改 日期间隔设置 日期标签或格式更改相关推荐

  1. R语言ggplot2可视化时间序列数据:ggplot2可视化在时间轴上添加按月的箱图(boxplot)

    R语言ggplot2可视化时间序列数据:ggplot2可视化在时间轴上添加按月的箱图(boxplot) 目录

  2. matlab均线程序化交易,【策略分享】Matlab量化交易策略源码分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 策略名称:横盘突破策略 策略思路: 日内交易策略,收盘平仓: 横盘突破在过去30根K线的高低点围绕中轴上下0.5%的范围内波动时: 上轨=过去30根K线的 ...

  3. matlab 量化 策略,【策略分享】Matlab量化交易策略源码分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 策略名称:横盘突破策略 策略思路: 日内交易策略,收盘平仓: 横盘突破在过去30根K线的高低点围绕中轴上下0.5%的范围内波动时: 上轨=过去30根K线的 ...

  4. 量化交易策略matlab交易方案,【策略分享】Matlab量化交易策略源码分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 策略名称:横盘突破策略 策略思路: 日内交易策略,收盘平仓: 横盘突破在过去30根K线的高低点围绕中轴上下0.5%的范围内波动时: 上轨=过去30根K线的 ...

  5. Matlab期货量化交易特征选取,【策略分享】Matlab量化交易策略源码分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 策略名称:横盘突破策略 策略思路: 日内交易策略,收盘平仓: 横盘突破在过去30根K线的高低点围绕中轴上下0.5%的范围内波动时: 上轨=过去30根K线的 ...

  6. matlab量化策略代码,【策略分享】Matlab量化交易策略源码分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 策略名称:横盘突破策略 策略思路: 日内交易策略,收盘平仓: 横盘突破在过去30根K线的高低点围绕中轴上下0.5%的范围内波动时: 上轨=过去30根K线的 ...

  7. fleury MATLAB,数学建模部分源码分享

    写在前面 数学建模竞赛已经结束了.由于种种原因最终无缘国奖,还是很难受的.结合我的经历,有一些想法想告诉所有正在准备数学建模竞赛的同学. 数学建模竞赛它不会绝对相信实力,运气真的是必须考虑的一部分. ...

  8. matlab布林算法代码,MATLAB量化交易策略源码分享之 布林通道+高低点

    策略原理: 通过布林带以及突破后的高低点的形成产生交易信号 采取跟踪止损出场 回测曲线: 2017-2-27 10:09:43 上传 下载附件 (65.41 KB) 策略代码: function  S ...

  9. 多目标人工秃鹫优化算法(MATLAB源码分享,智能优化算法) 提出了一种多目标版本的人工秃鹫优化算法(AVOA)

    多目标人工秃鹫优化算法(MATLAB源码分享,智能优化算法) 提出了一种多目标版本的人工秃鹫优化算法(AVOA),用于多目标优化问题. AVOA的灵感来源于非洲秃鹫的生活方式. 档案.网格和领导者选择 ...

最新文章

  1. React 中动态的加载组件 ---loadable-components
  2. 总结:实例化SqlParameter时,如果是字符型,一定要指定size属性,还有制定具体的类型...
  3. Html5 音效播放器
  4. DIP第二章习题解答
  5. 命令获取计算机信息,教你怎么在windows上用命令查看系统信息
  6. 如何将低压精密运算放大器的性能扩展到高压高侧电流检测应用(高电流电阻采集电压电路图及误差分析)
  7. 苹果13系统锁屏延迟_iPhone 11 锁屏出现延迟是怎么回事?
  8. 确认!字节跳动 AI Lab 负责人马维英离职,将赴清华加入张亚勤团队
  9. 给git命令设置别名
  10. Java中反射性能测试
  11. ora-01033 解决方法
  12. linux怎么样用终端打开百度,linux下用终端访问百度网站.doc
  13. 【leetcode刷题】72.6 和 9 组成的最大数字 ——Java版
  14. c语言中双冒号意思_详解C++中的双冒号 ::
  15. Chrome中的硬件加速合成
  16. uboot官方http下载地址
  17. 笔记本连接老显示器一直弹出‘输出信号超出范围“终于解决了--通过删除显示器的注册表
  18. Pyinstaller库的安装和使用用于生成可执行文件exe
  19. 如何让MenuBar的菜单栏靠右对齐?
  20. 思科模拟器之网络访问控制

热门文章

  1. 使用VS2012 的15个技巧
  2. 酒店公共广播背景音乐-基于互联网+的酒店IP网络广播系统设计
  3. IBM研发仿人脑计算机原型 用电子血液同时供能与冷却
  4. PAT出现格式错误怎么办
  5. Brian到Brian2的转换
  6. 宽带路由器上五个被“漠视”的功能
  7. 运输层(1.运输层协议概述)
  8. 有手就能学会- C语言零基础手写坦克大战
  9. Redis配置文件基本配置(笔记)
  10. 霍尔德(Hölder)不等式