Convertire asse x in ore

di il
2 risposte

Convertire asse x in ore

Salve a tutti.
Devo plottare una serie di valori che sono relativi a certe ore specifiche della giornata. Gli istanti in cui sono stati acquisiti i valori non sono tra loro equispaziati. Attualmente posso graficare i valori rispetto ad un asse x formata da punti equispaziati perdendo così l’andamento effettivo della mia variabile. Devo convertire l’asse x in modo che rappresenti le ore della giornata. Posseggo una una matrice in cui ogni riga corrisponde all’ora in cui ogni valore è stato acquisito e le colonne rappresentano ora minuti e secondi. Come posso plottare i miei valori in base a questa matrice di ore effettive invece che rispetto a dei valori equispaziati?

2 Risposte

  • Re: Convertire asse x in ore

    Ti faccio un esempio di cosa vuoi fare :
    a=[18 0 0; 18 30 0; 19 0 0; 20 0 0; 21 0 0];%matrice 
    b=[2 8 6 2 1]; %serie di valori
    c=cellfun(@(x) num2str(x,'%02d'),num2cell(a),'UniformOutput',false);
    d=strcat(c(:,1),':',c(:,2),':',c(:,3));
    figure
    plot(datenum(d,'HH:MM:SS'),b);            
    hold on;
    datetick('x','HH:MM:SS')   

    JESUS DAVID ARIZA ROYETH
  • Re: Convertire asse x in ore

    Mi è stato utilissimo, grazie mille!
Devi accedere o registrarti per scrivere nel forum
2 risposte