Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

Signale unde Systeme

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Zeitformat eines plot

 

Olli_11845
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 29.01.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.10.2020, 12:19     Titel: Zeitformat eines plot
  Antworten mit Zitat      
hallo zusammen,

ich habe eine kleine frag zu "datetick" oder xtickformat. Ich versuche Simulationsdaten darzustellen. Das ganze wird über 5 Tage, also 432000 Sekunden betrachtet.

Ich will nun, dass stattdessen Tage oder oder Uhrzeiten z.B. im 12h Rhytmus angezeigt werden.

mein Code ist sehr simpel
Code:


plot(S)
xtickformat('DD')

 



leider funktioniert das nciht. Ich bekomme xtickformat generell nicht ans funktionieren. ICh hoffe ihr könnt mir den Systemfehler den ich mache sagen.


Danke euch
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


Harald
Forum-Meister

Forum-Meister


Beiträge: 22.350
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.10.2020, 12:50     Titel:
  Antworten mit Zitat      
Hallo,

du musst x-Werte angeben, und diese x-Werte müssen im Format datetime oder duration sein. Woher soll MATLAB denn sonst wissen, welche Zeitstempel auf die x-Achse sollen? Beispiel:

Code:
d = seconds(1:432000);
r = cumsum(randn(1,432000)); % Random Walk als Beispieldaten
plot(datetime('today') + d,r)


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Olli_11845
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 29.01.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.10.2020, 12:59     Titel:
  Antworten mit Zitat      
ok das hab ich mir irgendwie simpler vorgestellt.

Aber danke ich versuch es mal
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 22.350
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.10.2020, 13:17     Titel:
  Antworten mit Zitat      
Hallo,

ich wüsste nicht, wie das simpler gehen sollte.
Wenn du keine Datumsangaben angibst, dann hat MATLAB auch keine verwenden...

Übertragen auf dein Beispiel:
Code:
d = datetime('today')+seconds(0:numel(S)-1);
plot(d, S)


Wenn die Messungen nicht heute oder nicht um Mitternacht angefangen haben, nicht im Sekundenabstand waren, oder es anderweitig anders war, musst du das entsprechend anpassen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Olli_11845
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 29.01.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.10.2020, 13:20     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
Hallo,

du musst x-Werte angeben, und diese x-Werte müssen im Format datetime oder duration sein. Woher soll MATLAB denn sonst wissen, welche Zeitstempel auf die x-Achse sollen? Beispiel:

Code:
d = seconds(1:432000);
r = cumsum(randn(1,432000)); % Random Walk als Beispieldaten
plot(datetime('today') + d,r)


Grüße,
Harald


ich hab es zwar etwas anders gelöst, aber jetzt habe ich es.... fast

hier mein Code:

Code:
figure
d = seconds(1:432000);
r = S0; % Random Walk als Beispieldaten

plot(d,r,'DurationTickFormat','d')


Das Problem ist, dass das Format der X-Acse in etwa so aussieht. 0,0000 x 10e5.

Was im Prinzip ja das ist was ich will, aber die Schreibweise ist mies. Wie kann ich die ändern?
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 22.350
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.10.2020, 13:37     Titel:
  Antworten mit Zitat      
Hallo,

welche Schreibweise willst du denn stattdessen? Den Befehl xtickformat hattest du ja schon gefunden. Eine Möglichkeit:
Code:
xtickformat('hh:mm')


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Olli_11845
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 29.01.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.10.2020, 13:54     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
Hallo,

welche Schreibweise willst du denn stattdessen? Den Befehl xtickformat hattest du ja schon gefunden. Eine Möglichkeit:
Code:
xtickformat('hh:mm')


Grüße,
Harald


Auch wenn es das jetzt nochmal umwirft. Am liebsten wäre mir Mo Di Mi Do Fr

aber da es vermutlich recht kompliziert ist, wäre das mein aktuelles Ziel:

0 1 2 3 4 5 also Angabe in Tagen.

mein sekundäres Ziel habe ich ja qausi erreicht nur dass halt anstatt 1, 0,00001e5 geschrieben wird
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 22.350
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.10.2020, 14:30     Titel:
  Antworten mit Zitat      
Hallo,

geht alles. Du musst nur wissen, wo die Ticks sein sollen und was du hinschreiben willst. Dann würde ich allerdings anders anfangen:

Code:
d = (0:431999)/(24*3600);
r = cumsum(randn(1,432000)); % Random Walk als Beispieldaten
plot(d,r)
xticks(0:5)
xticklabels(["So", "Mo", "Di", "Mi", "Do", "Fr"])


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Olli_11845
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 29.01.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.10.2020, 04:18     Titel:
  Antworten mit Zitat      
Das hat funktioniert.

Vielen Dank Smile
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2020 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.