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

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

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


绘图问题解决方案


修改前

修改后


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("绘图结果 ")



相关文章
|
6月前
|
算法 机器人
基于SOA海鸥优化算法的PID控制器最优控制参数计算matlab仿真
本课题研究基于海鸥优化算法(SOA)优化PID控制器参数的方法,通过MATLAB仿真对比传统PID控制效果。利用SOA算法优化PID的kp、ki、kd参数,以积分绝对误差(IAE)为适应度函数,提升系统响应速度与稳定性。仿真结果表明,SOA优化的PID控制器在阶跃响应和误差控制方面均优于传统方法,具有更快的收敛速度和更强的全局寻优能力,适用于复杂系统的参数整定。
|
9月前
|
机器学习/深度学习 算法 数据挖掘
基于WOA鲸鱼优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本项目基于MATLAB 2022a/2024b实现,采用WOA优化的BiLSTM算法进行序列预测。核心代码包含完整中文注释与操作视频,展示从参数优化到模型训练、预测的全流程。BiLSTM通过前向与后向LSTM结合,有效捕捉序列前后文信息,解决传统RNN梯度消失问题。WOA优化超参数(如学习率、隐藏层神经元数),提升模型性能,避免局部最优解。附有运行效果图预览,最终输出预测值与实际值对比,RMSE评估精度。适合研究时序数据分析与深度学习优化的开发者参考。
|
9月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于GA遗传优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本内容包含基于BiLSTM与遗传算法(GA)的算法介绍及实现。算法通过MATLAB2022a/2024b运行,核心为优化BiLSTM超参数(如学习率、神经元数量),提升预测性能。LSTM解决传统RNN梯度问题,捕捉长期依赖;BiLSTM双向处理序列,融合前文后文信息,适合全局信息任务。附完整代码(含注释)、操作视频及无水印运行效果预览,适用于股票预测等场景,精度优于单向LSTM。
|
6月前
|
数据采集 算法 前端开发
MATLAB|基于3D FDTD的微带线馈矩形天线分析[用于模拟超宽带脉冲通过线馈矩形天线的传播,以计算微带结构的回波损耗参数]
MATLAB|基于3D FDTD的微带线馈矩形天线分析[用于模拟超宽带脉冲通过线馈矩形天线的传播,以计算微带结构的回波损耗参数]
249 2
|
6月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于WOA鲸鱼优化的XGBoost序列预测算法matlab仿真
基于WOA优化XGBoost的序列预测算法,利用鲸鱼优化算法自动寻优超参数,提升预测精度。结合MATLAB实现,适用于金融、气象等领域,具有较强非线性拟合能力,实验结果表明该方法显著优于传统模型。(238字)
|
6月前
|
机器学习/深度学习 算法 PyTorch
【变分高斯Copula推断】基于Bernstein多项式的非参数转换则在描述单变量边缘后验时提供了充分的灵活性(Matlab代码实现)
【变分高斯Copula推断】基于Bernstein多项式的非参数转换则在描述单变量边缘后验时提供了充分的灵活性(Matlab代码实现)
139 2
|
7月前
|
机器学习/深度学习 调度 Python
【电力系统】基于 Sobol 低差异序列的光伏不确定性-电压稳定联合评估研究(Matlab代码实现)
【电力系统】基于 Sobol 低差异序列的光伏不确定性-电压稳定联合评估研究(Matlab代码实现)
186 4
|
7月前
|
机器学习/深度学习 算法 数据挖掘
【机械臂控制】基于matlab具有参数不确定性的动态非线性系统机械臂鲁棒控制研究(Matlab代码实现)
【机械臂控制】基于matlab具有参数不确定性的动态非线性系统机械臂鲁棒控制研究(Matlab代码实现)
260 0
|
9月前
|
算法 数据安全/隐私保护
基于Logistic-Map混沌序列的数字信息加解密算法matlab仿真,支持对文字,灰度图,彩色图,语音进行加解密
本项目实现了一种基于Logistic Map混沌序列的数字信息加解密算法,使用MATLAB2022A开发并包含GUI操作界面。支持对文字、灰度图像、彩色图像和语音信号进行加密与解密处理。核心程序通过调整Logistic Map的参数生成伪随机密钥序列,确保加密的安全性。混沌系统的不可预测性和对初值的敏感依赖性是该算法的核心优势。示例展示了彩色图像、灰度图像、语音信号及文字信息的加解密效果,运行结果清晰准确,且完整程序输出无水印。
基于Logistic-Map混沌序列的数字信息加解密算法matlab仿真,支持对文字,灰度图,彩色图,语音进行加解密
|
9月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本项目基于MATLAB2022a/2024b开发,结合粒子群优化(PSO)算法与双向长短期记忆网络(BiLSTM),用于优化序列预测任务中的模型参数。核心代码包含详细中文注释及操作视频,涵盖遗传算法优化过程、BiLSTM网络构建、训练及预测分析。通过PSO优化BiLSTM的超参数(如学习率、隐藏层神经元数等),显著提升模型捕捉长期依赖关系和上下文信息的能力,适用于气象、交通流量等场景。附有运行效果图预览,展示适应度值、RMSE变化及预测结果对比,验证方法有效性。

热门文章

最新文章