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

Plot über mehrere Tage

 

rasputin87
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.06.2013, 15:20     Titel: Plot über mehrere Tage
  Antworten mit Zitat      
Hallo,
ich will ein Diagramm über mehrere tage ploten. Über genau eine Woche, mit immer wieder wiederkehrende Uhrzeiten.
Ich habe eine TXT die ich einlese und dann plote, allerdings beschränkt sich der Plot nur auf 24 Stunden und nicht auf 7*24h.
Hier mein Code
Code:
clc;

format short

load Woche.txt

x = Woche(:,1)
y = Woche(:,2)

plot(x,y,'o')

Die einzulesende TXT beinhaltet in der 1. Spalte die Uhrzeit und in der 2. Spalte die Temperatur. Getrennt durch leerzeichen!
Wie bekomme ich das hin, das er nach 24 Stunden wieder bei Null bzw 1 weiter macht?
Private Nachricht senden Benutzer-Profile anzeigen


Paul_87
Forum-Anfänger

Forum-Anfänger


Beiträge: 17
Anmeldedatum: 20.06.13
Wohnort: Oz
Version: ---
     Beitrag Verfasst am: 25.06.2013, 23:12     Titel:
  Antworten mit Zitat      
Hallo rasputin,

wenn ich dich richtig verstehe, dann musst du die Vektoren, die du fuer dein plot nutzt, vergroessern.

Dazu werden rechteckige Klammern genutzt. z.B. so:

Code:


x=[x x+24 x+48]   %fuer stuendliche Werte
y=[y1 y2 y3]         %y1,y2,y3 sind die Werte fuer den jeweiligen Tag

 


...das ganze kannst du auch in einer Schleife anwenden
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.06.2013, 09:26     Titel:
  Antworten mit Zitat      
Danke sowas etwa hab ich gebraucht.
Allerdings verstehe ich nicht wie ich y1 also die ersten 24h und y2 die zweiten 24h definiere...
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 26.06.2013, 12:04     Titel:
  Antworten mit Zitat      
Hallo rasputin87,

Die können wir auch nicht wissen, das es vollkommen von Deinem speziellen Programm abhängt.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.06.2013, 12:45     Titel:
  Antworten mit Zitat      
Also,
ich hab meine TXT überarbeitet.
nun sieht sie so aus

12.04.2013 00:00 7,234
12.04.2013 00:30 7,156
...
13.04.2013 00:00 6,342

usw.
Das geht insgesamt über 7 Tage...Über diesen Zeitraum möchte ich auch einen Plot erzeugen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 26.06.2013, 13:11     Titel:
  Antworten mit Zitat      
Hallo rasputin87,

Gut. Was ist nun genau Deine Frage?
Hast Du schon eine Methode um Zahlen mit Dezimal-Komma einzulesen, obwohl Matlab Dezimal-Punkte benötigt?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.06.2013, 19:18     Titel:
  Antworten mit Zitat      
Das mit den Komma löse ich einfach mit Textpad und Suchen und Ersetzen.
Ich will das meine Messreihe geplotet wird.
X-Achse sie Zeit (Eine ganze Woche)
Y-Achse die Temperatur.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 27.06.2013, 10:49     Titel:
  Antworten mit Zitat      
Hallo rasputin87,

Es ist wichtig, dass Du Details wie die Konvertierung der Kommata explizit erwähnst, wenn Du die Informationen im Forum postest. Denn das Erraten solcher Details raubt unsere und damit auch Deine Zeit.

Zitat:
Ich will das meine Messreihe geplotet wird.
X-Achse sie Zeit (Eine ganze Woche)
Y-Achse die Temperatur.

Ok, das ist nun klar. Was ist nun genau Deine Frage? Wobei können wir Dir helfen?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2013, 12:05     Titel:
  Antworten mit Zitat      
Also,
ich lad die daten ein und plotte sie. Allerdings bekomme ich es nicht hin, dass der plot über eine ganze Woche geht sondern nur über 24h. Das ist auch klar, weil sich die Zeitangaben immer wiederholen.
Hier mal mein Code:
Code:

clc;

load y1.txt

x = y1(:,2);
y = y1(:,3);

plot(x,y,'-r')


So wie bekomme ich nun hin das meine X-Achse eine ganze Woche darstellt?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 27.06.2013, 15:02     Titel:
  Antworten mit Zitat      
Hallo rasputin87,

Das Thema beginnt komplex zu werden, weil nicht klar wird, was das Problem ist.
Wieso wiederholen sich die Zeitangaben? Du hattest doch gepostet, dass Du folgendes File importierst:
Zitat:
12.04.2013 00:00 7,234
12.04.2013 00:30 7,156
...
13.04.2013 00:00 6,342

Dies ist aber per LOAD gar nicht möglich. Deswegen können wir niocht wissen, was genau nach dem LOAD in y1 steht. Und ohne das zu wissen, können wir keinen Vorschlag machen, wie man die Werte in X so ändern kann, dass das gewünschte herauskommt.
Zudem ist die Beschreibung "dass der Plot über eine ganze Woche geht" nicht eindeutig.
Was steht also in y? wieso wird die erste Spalte nicht genutzt? Befindet sich darin das Datum, das Du vermutlich benötigst? Welche Werte sollen auf der X-Achse aufgetragen werden? Vielleicht ist DATENUM und DATETICK hilfreich.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2013, 19:35     Titel:
  Antworten mit Zitat      
Du hast recht das mit Load und dem Datum Funktioniert nicht.
Also hab ich eine TXT gebastelt, die so ausshiet:

00.00 7.265 Dies gilt für ein Tag
00.30 7.137
...
00.00 6.826 Dies gilt für den nächsten Tag
00.30 6.984
usw.
Sprich in der ersten Spalte stehen Uhrzeiten mehrere Tage. In der zweiten Spalte Temperaturwerte.
Die Uhrzeiten wiederholen sich natürlich, weil ich das file über mehrere tage geht, deshalb geht mein Plot nur über 24 Stunden, er soll aber aber meine Temperaturwerte über die ganze Woche auf der X-Achse plotten.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 27.06.2013, 23:15     Titel:
  Antworten mit Zitat      
Hallo rasputin87,

Ich finde "00.00 7.265" noch unpraktischer als "12.04.2013 00:00 7,234".
Vorallem fehlt dann ja die Tages-Information, was ja ein Kernpunkt Deines Problem zu sein scheint. Die später wieder künstlich einzupfriemeln ist unnötig anstrengend.

Ich hatte ja noch einige weitere Rückfragen gestellt und warte dann erstmal auf die Antworten.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2013, 23:28     Titel:
  Antworten mit Zitat      
Ich benutze die erste Spalte nicht da es mit load nicht geht. Was soll in y stehen?
Bitte konkretisiere deine Fragen!
Danke
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 28.06.2013, 01:04     Titel:
  Antworten mit Zitat      
Hallo rasputin87

Du hattest dies gepostet:
Code:
x = y1(:,2);
y = y1(:,3);

Welche Werte stehen in der ersten Spalte von y1?

Zitat:
Ich benutze die erste Spalte nicht da es mit load nicht geht.

"Es geht nicht" ist keine verständliche Beschreibung. Wenn "es nicht geht", woher stammen die Werte der ersten Spalte dann?
Es bringt nichts, wenn Du Beispiele von Text-Dateien zeigst, die Du gar nicht benutzt oder längst einlesen kannst. Soll das gezeigte "00.30" soviel wie "00:30" heißen? Hier wäre der Dezimalpunkt ausgeprochen tückisch.

Ich vermute, die Lösung wird sehr einfach, wenn Du zunächst ganz konkret erklärst, was das Problem ist und wie genau die vorhandenen Inputs aussehen.
Wenn Du in den Orginal-Files die Kommata durch Punkte ersetzt kannst Du sie mit TEXTSCAN einlesen und die Zeit zusammen mit dem Datum per DATENUM umwandeln. Dies wurd in diesem Forum wiederholt diskutiert und eine Suche wird sich lohnen.

Es wird nicht viel helfen, wenn ich konkretere Fragen stelle. Erst eine konkretere Beschreibung von Dir wird eine Lösung erlauben. Dabei geht es vermutlich geht es um 2 bis 4 Zeilen Code.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rasputin87
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 78
Anmeldedatum: 29.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.06.2013, 08:50     Titel:
  Antworten mit Zitat      
Naja es hat sich erledigt. Ich hab es jetzt auf meine Art geklärt. Ich hab keine zeit mich mit der Visualisierung der Daten so lange aufzuhalten
Vielen Dank
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen

Gehe zu Seite 1, 2  Weiter

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 - 2025 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.