Exclude certain dates on x-axis using xlim or xtick?
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Louise Wilson
el 22 de Oct. de 2021
Comentada: Louise Wilson
el 22 de Oct. de 2021
I have attached my dataset and a plot to illustrate what I am trying to do. I would like to remove the blank spaces between the data to account for the fact that no data was collected between 5pm-8am. It would be useful to mark the boundary of each new day with a vertical line. Is there a way to do this?
% Create datasets for plotting (from y.mat)
backg = y(:,2);
backg(y(:,4)~=0) = NaN;
inter = y(:,2);
inter(y(:,4)<1) = NaN;
y_dt=datetime(y(:,1),'ConvertFrom','datenum');
% Plot
figure(1)
bar(y_dt,backg,'g')
hold on
bar(y_dt,inter,'r')
plot(y_dt,y(:,3),'black'); %plot threshold
xlim([datetime(2020,2,5,08,0,0), datetime(2020,2,7,17,0,0)]); %filter to date range of interest
2 comentarios
dpb
el 22 de Oct. de 2021
Not with the real datetime on the x-axis, no.
There are ways to work around the problem by plotting against ordinal values (which won't work if the time points aren't uniform) or by using datenum time-of-day and an arbitrary date and then fix up the tick labels manually.
All in all, it's a royal p(ain)it(proverbial)a(ppendage).
Respuesta aceptada
the cyclist
el 22 de Oct. de 2021
3 comentarios
the cyclist
el 22 de Oct. de 2021
OK. FYI in case you don't know, you can make a tiled layout with no spacing between tiles, so it seems guaranteed to take less space (at least effectively) than what you posted here.
Más respuestas (0)
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!