How to change interval unit of x axis
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sehoon Chang
el 13 de En. de 2020
Hi everyone,
I am trying to figure out how to adjust the graph by changing the interval of my X axis.
I made a timetable and both X and Y values have 17300 arrays, X-value being the time interval in 15 minutes of half year.
The graph came out well. However, i wish to adjust the X-axis into hourly interval.
Is there code that adjusts a graph according to a defined inteval of X-axis?
Using the graph as an exmaple that i have made:
it can be seen that the X-axis value goes up to 18000 (15-Min Interval measurements of a half year).
I wish to change X-axis go upto 4380 (hourly Interval measurement of a half year).
I appreciate for your advice and help.
JC
2 comentarios
Respuesta aceptada
Meg Noah
el 14 de En. de 2020
Editada: Meg Noah
el 14 de En. de 2020
Here's one way
You can do shape downsampling - reshape then sum the lines. I made some data by digitizing yoour plot. It's attached. But use your data for the real plot of course!
load('Halbjahresdauerlinie_15min.mat')
npts = length(Halbjahresdauerlinie_15min.Heizstunden);
if (~mod(npts,4) == 0)
error('unable to downsample because array length needs to be a factor of 4');
end
Leistung = sum(reshape(Halbjahresdauerlinie_15min.Leistung,4,npts/4))';
Leistung = Leistung/4;
Heizstunden = Halbjahresdauerlinie_15min.Heizstunden(1:4:end)/4';
Halbjahresdauerlinie_Daily = table(Heizstunden,Leistung);
figure();
plot(Halbjahresdauerlinie_Daily.Heizstunden,Halbjahresdauerlinie_Daily.Leistung);
xlabel('Heizstunden per day');
ylabel('Leistung in kW');
title('Halbjahresdauerlinie')
You can just down sample the time axis which are 15-min intervals, or you can do mean(reshape(Halbjahresdauerlinie_15min.Heizstunden, 4, npts/4); It depends upon how you want to annotate the time axis for each plot - from the half day or from the start of day...
0 comentarios
Más respuestas (1)
Eric Sofen
el 13 de En. de 2020
If X is a duration array (X = minutes(0:15:262800)), you plot datetimes or durations directly, and changing the Format property of the duration will change how it displays.
compare
plot(X,Y)
to
X.Format = 'h';
plot(X,Y)
0 comentarios
Ver también
Categorías
Más información sobre 2-D and 3-D Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!