我怎样才能解决这个问题而策划?

4视图(30天)
普尔
普尔 2021年8月27日
评论道: 明星黾 2021年8月29日
大家好,
多亏了这个社区的一员,我找到了一个方法之间的差异。问题是,当我去,我不获得差异1998年12月15日——1999年12月7日(今天)但是1月1 1998 - 1 1999年1月之间的区别。
谁能帮我个忙吗?
非常感谢。
清晰的所有
关闭所有
LD =负载(“giulia_TT.mat”);
giulia_TT = LD.giulia_TT;
GIULIA_YEARLY_N =调整时间(giulia_TT,“年”@ (x)的意思是(x, 1,“omitnan”));%每年平均
N = GIULIA_YEARLY_N.Var5 * 3.5;
SelIdx = (GIULIA_YEARLY_N.Time) > = 1998;%逻辑面具Vectror
N_Sel = N (SelIdx);
N_Sel_Dif =选项(N_Sel);
年= 1998 +(1:元素个数(N_Sel_Dif));
limits_mtx = datetime ({1998年12月15日的,07年12月1999年;07年12月1999年,“2000年11月30日”;“2000年11月30日”,2001年11月13日的;2001年11月13日的,“2002年12月30日”;“2002年12月30日”,“2004年1月4;“2004年1月4,2004年11月22日的;2004年11月22日的,2005年11月24日的;2005年11月24日的,2006年12月15日的;2006年12月15日的,2008年1月22日的;2008年1月22日的,2011年1月9日的;“2010年1月1,2011年11月16日的;2011年11月6日的,2013年1月9日的;2013年1月9日的,2014年1月5日的;2014年1月5日的,2015年1月31日的;2015年1月31日的,2018年1月25日的;},“InputFormat”,“dd嗯yyyy”)
年= datetime(年,1,1,“格式”,“yyyy”);
情节(年,N_Sel_Dif)
网格
xlim ([min(年)max(年)])
包含(“年”)
ylabel (“年度N-Differences”)
集(gca),“XTick”,年)
limits_mtx情节(几年,“g - ^”,“MarkerEdgeColor”,“k”,“MarkerFaceColor”,‘g’)
持有
集(gca),“ytick”,200:25:400);

接受的答案

明星黾
明星黾 2021年8月27日
编辑:明星黾 2021年8月27日
我不理解你在做什么。
这个调用将抛出一个错误:
情节(年,limits_mtx, g - ^,‘MarkerEdgeColor’,‘k’,‘MarkerFaceColor’,‘g’)
因为前两个参数没有常见的维度。
我不知道你想要做什么,那么试试这个是否关闭。
改变它如果不是:
LD =负载(“giulia_TT [1] .mat”);
giulia_TT = LD.giulia_TT;
GIULIA_YEARLY_N =调整时间(giulia_TT,“年”@ (x)的意思是(x, 1,“omitnan”));%每年平均
N = GIULIA_YEARLY_N.Var5 * 3.5;
SelIdx = (GIULIA_YEARLY_N.Time) > = 1998;%逻辑面具向量
N_Sel = N (SelIdx);
N_Sel_Dif =选项(N_Sel);
年= 1998 +(1:元素个数(N_Sel_Dif));
GIULIA_DAILY_N =调整时间(giulia_TT,“每天”@ (x)的意思是(x, 1,“omitnan”));%每日意味着
limits_mtx = datetime ({1998年12月15日的,07年12月1999年;07年12月1999年,“2000年11月30日”;“2000年11月30日”,2001年11月13日的;2001年11月13日的,“2002年12月30日”;“2002年12月30日”,“2004年1月4;“2004年1月4,2004年11月22日的;2004年11月22日的,2005年11月24日的;2005年11月24日的,2006年12月15日的;2006年12月15日的,2008年1月22日的;2008年1月22日的,2011年1月9日的;“2010年1月1,2011年11月16日的;2011年11月6日的,2013年1月9日的;2013年1月9日的,2014年1月5日的;2014年1月5日的,2015年1月31日的;2015年1月31日的,2018年1月25日的;},“InputFormat”,“dd嗯yyyy”);
边缘= [limits_mtx (: 1);limits_mtx (, 2)]。”;
k = 1:元素个数(边缘)1
idxrng = (GIULIA_DAILY_N.Time > =边缘(k) & (GIULIA_DAILY_N.Time <边缘(k + 1));%日期范围
如果(k + 1) = =元素个数(边缘)
idxrng = (GIULIA_DAILY_N.Time > =边缘(k) & (GIULIA_DAILY_N.Time < =边缘(k + 1));%日期范围(一本)
结束
limits_counts (k) =意味着(GIULIA_DAILY_N {idxrng 6},“omitnan”);%的范围
结束
% limits_counts
年= datetime(年,1,1,“格式”,“yyyy”);
情节(年,N_Sel_Dif)
网格
xlim ([min(年)max(年)])
包含(“年”)
ylabel (“年度N-Differences”)
集(gca),“XTick”,年)
情节(limits_counts值(limits_mtx, 2),“g - ^”,“MarkerEdgeColor”,“k”,“MarkerFaceColor”,‘g’)
持有
持有
网格
集(gca),“XTick”中位数(limits_mtx, 2))
xtickformat (“yyyy”)
包含(“本(平均年)”)
ylabel (“本是”)
%设置(gca, ytick, 200:25:400);
做适当的改变来得到你想要的结果。
编辑- (2021年8月27日14:44)
让这些特定年之间的区别
k = 1:元素个数(边缘)1
idxrng = (GIULIA_DAILY_N.Time > =边缘(k) & (GIULIA_DAILY_N.Time <边缘(k + 1));%日期范围
如果(k + 1) = =元素个数(边缘)
idxrng = (GIULIA_DAILY_N.Time > =边缘(k) & (GIULIA_DAILY_N.Time < =边缘(k + 1));%日期范围(一本)
结束
idxrng =找到(idxrng);
limits_dif (k) = diff (GIULIA_DAILY_N {idxrng([1]结束),6});%的范围
结束
情节(limits_mtx (:, 2), limits_dif,“g - ^”,“MarkerEdgeColor”,“k”,“MarkerFaceColor”,‘g’)
持有
持有
网格
集(gca),“XTick”中位数(limits_mtx, 2))
xtickformat (“yyyy”)
包含(“本(平均年)”)
ylabel (“本结束的区别”)
ylim ([1] * 100)
文本(limits_mtx (:, 2), limits_dif,组成(' \ \ leftarrow % s 'limits_mtx (: 2)),“水平的”,“左”,“绿色”,“中间”,“旋转”,80,“字形大小”,8)
改变了 情节 调用:
情节(limits_mtx (:, 2), limits_dif,‘g - ^’,‘MarkerEdgeColor’,‘k’,‘MarkerFaceColor’,‘g’)
和添加 文本 电话,日期都是正确的,当我运行它。
实验来得到你想要的结果。
16条评论
明星黾
明星黾 2021年8月29日
像往常一样,这是我的荣幸!

登录置评。

更多的答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!