WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Tabelle Auswerten nach Datum

 

student_123
Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 14.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.05.2019, 14:44     Titel: Tabelle Auswerten nach Datum
  Antworten mit Zitat      
Hallo,

ich möchte meine Daten aus der Tabelle daten.mat nach Tagen sortieren. Das klappt soweit von 1-7.
Dabei habe ich folgendes Problem:
Jetzt hätte ich gerne, dass im Histogram anstatt der Zahlen Mo-So steht und das die Anzahl der Werte pro Tag (also /24) angegeben werden, da die Tabelle Werte über mehrere Monate enthält. Leider funktioniert das nicht.

[code]

load('daten.mat')

%Sortierung nach Tagen Kfz/Tag
h = day(wim.timestamp,'dayofweek');

f = figure;
set(f, 'Units', 'normalized', 'Position', [0.1, 0.1, 0.3, 0.2]);
histogram(h)
ylabel('Anzahl')

[/code]

Der Zeitstempel sieht folgender Maßen aus

'01.01.2019 09:00'
'01.01.2019 12:30'
'01.01.2019 15:10'
'02.01.2019 07:30'
'02.01.2019 09:30'
...



Viele Grüße

Student_123
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.05.2019, 16:23     Titel:
  Antworten mit Zitat      
Hallo,

zur ersten Frage:
xticks und xticklabels sollte helfen.

Zitat:
das die Anzahl der Werte pro Tag (also /24) angegeben werden

Das verstehe ich ebensowenig wie die folgende Begründung. Willst du die Histogrammdaten nachverarbeiten? Dann wäre histcounts und danach bar empfehlenswert.

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
 
student_123
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 14.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.05.2019, 17:34     Titel:
  Antworten mit Zitat      
Hallo Harald,

danke für deine Antwort. xticklabels hat funktioniert.

Ich habe das Problem, dass auf meiner x-Achse Sonntag - Samstag angegeben wird, weil bei day die Nummer 1 dem Sonntag zugewiesen wird. Wie kann ich meine Daten im Histogram von Montag - Sonntag sortieren? Bzw. die Reihenfolge der Angabe ändern

Es geht um die Anzahl von Fahrzeugen, mit histcounts bekomme ich für einen bestimmten Wochentag eine Gesamtzahl über alle Wochen. Ich hätte aber gerne die durschnittliche Anzahl der Fahrzeuge pro Tag bspw. für Montag. Wie kann ich das in meinem Histogram darstellen?


Viele Grüße

student_123
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

Zitat:
Wie kann ich meine Daten im Histogram von Montag - Sonntag sortieren?

Ich würde alle 1 in 8 umwandeln.

Ist die Anzahl der erfassten Wochentage immer gleich oder variiert sie von Wochentag zu Wochentag?

Wie gesagt: du müsstest die Daten vorab nachverarbeiten:
Zitat:
Dann wäre histcounts und danach bar empfehlenswert.


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
 
student_123
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 14.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.05.2019, 11:16     Titel:
  Antworten mit Zitat      
Hallo Harald,

mein Histogram sieht aus, wie im Anhang dargestellt.

Code:
h = weekday(SV.timestamp);
B = histcounts(h);
bar(B)
title('Anteil der Fahrzeugklassen am Gesamtverkehr')
ylabel('Anzahl der Fahrzeuge')
xticklabels({'So','Mo','Di','Mi','Do','Fr','Sa'})


Die Anzahl der Wochentage ist immer gleich. Momentan enthalten die Daten Werte von 7 Wochen, das heißt, der Montagswert entspricht 7*Montag. Wie kann ich die Wochentage durch 7 teilen?

Zitat:
Ich würde alle 1 in 8 umwandeln.


Wie kann ich dabei vorgehen? ich habe mit weekdays ja eine Reihenfolge vorgegeben, die als Vektor abgespeichert wird. Ich hatte als Sortierung folgendes überlegt. Nur weiß ich dann nicht weiter:

Code:
Montag = h == 2;
Dienstag = h == 3;
Mittwoch = h == 4;
Donnerstag = h == 5;
Freitag = h == 6;
Samstag = h == 7;
Sonntag = h == 1;




Viele Grüße
Student_123

histogram.fig
 Beschreibung:

Download
 Dateiname:  histogram.fig
 Dateigröße:  12.22 KB
 Heruntergeladen:  242 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.05.2019, 11:38     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wie kann ich die Wochentage durch 7 teilen?

Code:
B = B / 7;


Zitat:
Wie kann ich dabei vorgehen?

Code:
h (h == 1) = 8;


Ich würde vor dem xticklabels-Befehl dann auch noch
Code:
xticks(2:8)

einfügen.

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
 
student_123
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 14.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.05.2019, 11:43     Titel:
  Antworten mit Zitat      
Vielen Dank!

Funktioniert alles wunderbar.

Viele Grüße
Student_123
Private Nachricht senden Benutzer-Profile anzeigen
 
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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.