Draw vertical lines which have constant interval

5 Ansichten (letzte 30 Tage)
주희 박
주희 박 am 3 Okt. 2022
Kommentiert: 주희 박 am 5 Okt. 2022
Hi, I attached time(datetime, 1980.1.1~2015.12.31) and set y value as P=[1:432].
* I convert date form.I also attached original time form(original_time)
time = datetime(original_form,'ConvertFrom','datenum');
If i draw the plot, i got below figure.
plot(time,P);
datetick('x','yy/mm','keeplimits');
grid on
And i want to add constant vertical line on every March.
I couldn't fine proper method. Please help me :(
  2 Kommentare
Rik
Rik am 3 Okt. 2022
Would yline do what you need?
주희 박
주희 박 am 3 Okt. 2022
maybe xline. But It also didn't work. I did xline(3:12:423),the results is not what i want

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

VBBV
VBBV am 3 Okt. 2022
Bearbeitet: VBBV am 3 Okt. 2022
P=[1:432]
P = 1×432
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
original_form = load('original_time.mat')
original_form = struct with fields:
t: [723195 723226 723255 723286 723316 723347 723377 723408 723439 723469 723500 723530 723561 723592 723620 723651 723681 723712 723742 723773 723804 723834 723865 723895 723926 723957 723985 724016 724046 724077 724107 724138 724169 724199 … ]
time = datetime(original_form.t,'ConvertFrom','datenum')
time = 1×432 datetime array
15-Jan-1980 15-Feb-1980 15-Mar-1980 15-Apr-1980 15-May-1980 15-Jun-1980 15-Jul-1980 15-Aug-1980 15-Sep-1980 15-Oct-1980 15-Nov-1980 15-Dec-1980 15-Jan-1981 15-Feb-1981 15-Mar-1981 15-Apr-1981 15-May-1981 15-Jun-1981 15-Jul-1981 15-Aug-1981 15-Sep-1981 15-Oct-1981 15-Nov-1981 15-Dec-1981 15-Jan-1982 15-Feb-1982 15-Mar-1982 15-Apr-1982 15-May-1982 15-Jun-1982 15-Jul-1982 15-Aug-1982 15-Sep-1982 15-Oct-1982 15-Nov-1982 15-Dec-1982 15-Jan-1983 15-Feb-1983 15-Mar-1983 15-Apr-1983 15-May-1983 15-Jun-1983 15-Jul-1983 15-Aug-1983 15-Sep-1983 15-Oct-1983 15-Nov-1983 15-Dec-1983 15-Jan-1984 15-Feb-1984 15-Mar-1984 15-Apr-1984 15-May-1984 15-Jun-1984 15-Jul-1984 15-Aug-1984 15-Sep-1984 15-Oct-1984 15-Nov-1984 15-Dec-1984 15-Jan-1985 15-Feb-1985 15-Mar-1985 15-Apr-1985 15-May-1985 15-Jun-1985 15-Jul-1985 15-Aug-1985 15-Sep-1985 15-Oct-1985 15-Nov-1985 15-Dec-1985 15-Jan-1986 15-Feb-1986 15-Mar-1986 15-Apr-1986 15-May-1986 15-Jun-1986 15-Jul-1986 15-Aug-1986 15-Sep-1986 15-Oct-1986 15-Nov-1986 15-Dec-1986 15-Jan-1987 15-Feb-1987 15-Mar-1987 15-Apr-1987 15-May-1987 15-Jun-1987 15-Jul-1987 15-Aug-1987 15-Sep-1987 15-Oct-1987 15-Nov-1987 15-Dec-1987 15-Jan-1988 15-Feb-1988 15-Mar-1988 15-Apr-1988 15-May-1988 15-Jun-1988 15-Jul-1988 15-Aug-1988 15-Sep-1988 15-Oct-1988 15-Nov-1988 15-Dec-1988 15-Jan-1989 15-Feb-1989 15-Mar-1989 15-Apr-1989 15-May-1989 15-Jun-1989 15-Jul-1989 15-Aug-1989 15-Sep-1989 15-Oct-1989 15-Nov-1989 15-Dec-1989 15-Jan-1990 15-Feb-1990 15-Mar-1990 15-Apr-1990 15-May-1990 15-Jun-1990 15-Jul-1990 15-Aug-1990 15-Sep-1990 15-Oct-1990 15-Nov-1990 15-Dec-1990 15-Jan-1991 15-Feb-1991 15-Mar-1991 15-Apr-1991 15-May-1991 15-Jun-1991 15-Jul-1991 15-Aug-1991 15-Sep-1991 15-Oct-1991 15-Nov-1991 15-Dec-1991 15-Jan-1992 15-Feb-1992 15-Mar-1992 15-Apr-1992 15-May-1992 15-Jun-1992 15-Jul-1992 15-Aug-1992 15-Sep-1992 15-Oct-1992 15-Nov-1992 15-Dec-1992 15-Jan-1993 15-Feb-1993 15-Mar-1993 15-Apr-1993 15-May-1993 15-Jun-1993 15-Jul-1993 15-Aug-1993 15-Sep-1993 15-Oct-1993 15-Nov-1993 15-Dec-1993 15-Jan-1994 15-Feb-1994 15-Mar-1994 15-Apr-1994 15-May-1994 15-Jun-1994 15-Jul-1994 15-Aug-1994 15-Sep-1994 15-Oct-1994 15-Nov-1994 15-Dec-1994 15-Jan-1995 15-Feb-1995 15-Mar-1995 15-Apr-1995 15-May-1995 15-Jun-1995 15-Jul-1995 15-Aug-1995 15-Sep-1995 15-Oct-1995 15-Nov-1995 15-Dec-1995 15-Jan-1996 15-Feb-1996 15-Mar-1996 15-Apr-1996 15-May-1996 15-Jun-1996 15-Jul-1996 15-Aug-1996 15-Sep-1996 15-Oct-1996 15-Nov-1996 15-Dec-1996 15-Jan-1997 15-Feb-1997 15-Mar-1997 15-Apr-1997 15-May-1997 15-Jun-1997 15-Jul-1997 15-Aug-1997 15-Sep-1997 15-Oct-1997 15-Nov-1997 15-Dec-1997 15-Jan-1998 15-Feb-1998 15-Mar-1998 15-Apr-1998 15-May-1998 15-Jun-1998 15-Jul-1998 15-Aug-1998 15-Sep-1998 15-Oct-1998 15-Nov-1998 15-Dec-1998 15-Jan-1999 15-Feb-1999 15-Mar-1999 15-Apr-1999 15-May-1999 15-Jun-1999 15-Jul-1999 15-Aug-1999 15-Sep-1999 15-Oct-1999 15-Nov-1999 15-Dec-1999 15-Jan-2000 15-Feb-2000 15-Mar-2000 15-Apr-2000 15-May-2000 15-Jun-2000 15-Jul-2000 15-Aug-2000 15-Sep-2000 15-Oct-2000 15-Nov-2000 15-Dec-2000 15-Jan-2001 15-Feb-2001 15-Mar-2001 15-Apr-2001 15-May-2001 15-Jun-2001 15-Jul-2001 15-Aug-2001 15-Sep-2001 15-Oct-2001 15-Nov-2001 15-Dec-2001 15-Jan-2002 15-Feb-2002 15-Mar-2002 15-Apr-2002 15-May-2002 15-Jun-2002 15-Jul-2002 15-Aug-2002 15-Sep-2002 15-Oct-2002 15-Nov-2002 15-Dec-2002 15-Jan-2003 15-Feb-2003 15-Mar-2003 15-Apr-2003 15-May-2003 15-Jun-2003 15-Jul-2003 15-Aug-2003 15-Sep-2003 15-Oct-2003 15-Nov-2003 15-Dec-2003 15-Jan-2004 15-Feb-2004 15-Mar-2004 15-Apr-2004 15-May-2004 15-Jun-2004 15-Jul-2004 15-Aug-2004 15-Sep-2004 15-Oct-2004 15-Nov-2004 15-Dec-2004 15-Jan-2005 15-Feb-2005 15-Mar-2005 15-Apr-2005 15-May-2005 15-Jun-2005 15-Jul-2005 15-Aug-2005 15-Sep-2005 15-Oct-2005 15-Nov-2005 15-Dec-2005 15-Jan-2006 15-Feb-2006 15-Mar-2006 15-Apr-2006 15-May-2006 15-Jun-2006 15-Jul-2006 15-Aug-2006 15-Sep-2006 15-Oct-2006 15-Nov-2006 15-Dec-2006 15-Jan-2007 15-Feb-2007 15-Mar-2007 15-Apr-2007 15-May-2007 15-Jun-2007 15-Jul-2007 15-Aug-2007 15-Sep-2007 15-Oct-2007 15-Nov-2007 15-Dec-2007 15-Jan-2008 15-Feb-2008 15-Mar-2008 15-Apr-2008 15-May-2008 15-Jun-2008 15-Jul-2008 15-Aug-2008 15-Sep-2008 15-Oct-2008 15-Nov-2008 15-Dec-2008 15-Jan-2009 15-Feb-2009 15-Mar-2009 15-Apr-2009 15-May-2009 15-Jun-2009 15-Jul-2009 15-Aug-2009 15-Sep-2009 15-Oct-2009 15-Nov-2009 15-Dec-2009 15-Jan-2010 15-Feb-2010 15-Mar-2010 15-Apr-2010 15-May-2010 15-Jun-2010 15-Jul-2010 15-Aug-2010 15-Sep-2010 15-Oct-2010 15-Nov-2010 15-Dec-2010 15-Jan-2011 15-Feb-2011 15-Mar-2011 15-Apr-2011 15-May-2011 15-Jun-2011 15-Jul-2011 15-Aug-2011 15-Sep-2011 15-Oct-2011 15-Nov-2011 15-Dec-2011 15-Jan-2012 15-Feb-2012 15-Mar-2012 15-Apr-2012 15-May-2012 15-Jun-2012 15-Jul-2012 15-Aug-2012 15-Sep-2012 15-Oct-2012 15-Nov-2012 15-Dec-2012 15-Jan-2013 15-Feb-2013 15-Mar-2013 15-Apr-2013 15-May-2013 15-Jun-2013 15-Jul-2013 15-Aug-2013 15-Sep-2013 15-Oct-2013 15-Nov-2013 15-Dec-2013 15-Jan-2014 15-Feb-2014 15-Mar-2014 15-Apr-2014 15-May-2014 15-Jun-2014 15-Jul-2014 15-Aug-2014 15-Sep-2014 15-Oct-2014 15-Nov-2014 15-Dec-2014 15-Jan-2015 15-Feb-2015 15-Mar-2015 15-Apr-2015 15-May-2015 15-Jun-2015 15-Jul-2015 15-Aug-2015 15-Sep-2015 15-Oct-2015 15-Nov-2015 15-Dec-2015
plot(time,P);
%datetick('x','yy/mm','keeplimits');
grid on
march = time(1) + calmonths(2) : calyears(1) : time(end)
march = 1×36 datetime array
15-Mar-1980 15-Mar-1981 15-Mar-1982 15-Mar-1983 15-Mar-1984 15-Mar-1985 15-Mar-1986 15-Mar-1987 15-Mar-1988 15-Mar-1989 15-Mar-1990 15-Mar-1991 15-Mar-1992 15-Mar-1993 15-Mar-1994 15-Mar-1995 15-Mar-1996 15-Mar-1997 15-Mar-1998 15-Mar-1999 15-Mar-2000 15-Mar-2001 15-Mar-2002 15-Mar-2003 15-Mar-2004 15-Mar-2005 15-Mar-2006 15-Mar-2007 15-Mar-2008 15-Mar-2009 15-Mar-2010 15-Mar-2011 15-Mar-2012 15-Mar-2013 15-Mar-2014 15-Mar-2015
xticks(march)
xline(march,'linestyle','--')
  3 Kommentare
VBBV
VBBV am 3 Okt. 2022
Bearbeitet: VBBV am 3 Okt. 2022
Following @Walter Roberson answer, you could change the xticks for the plot axis and then draw xline as usual for every march month
VBBV
VBBV am 3 Okt. 2022
Bearbeitet: VBBV am 3 Okt. 2022
@Walter Roberson you're right. sorry, i overlooked that line. thanks for it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 3 Okt. 2022
Bearbeitet: Walter Roberson am 3 Okt. 2022
time = datetime(original_form,'ConvertFrom','datenum');
plot(time, P);
firstmarch = dateshift(time(1), 'start', 'year') + calmonths(2);
lastmarch = dateshift(time(end), 'start', year') + calmonths(2);
marchs = firstmarch : calmonths(12) : lastmarch;
xline(marchs)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by