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

Messwerte in x,y Plot

 

BastiM
Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 15.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2013, 12:39     Titel: Messwerte in x,y Plot
  Antworten mit Zitat      
Hallo zusammen,

bin absoluter Matlab Neuling, und habe folgendes Problem, bin schon ne Weile am Suchen, finde aber nie die passenden Kombinationen...

Also, prinzipiell habe ich:
Eine Excel- Datei mit vier Spalten(Datum, Uhrzeit, Messwert1,Messwert2)

Hieraus möchte ich eine Trendlinie erstellen und diese Trendlinie mit der Matlab Optimierungsfunktion optimieren...
Dazu sollte ich aber erst mal die Excel- Datei bearbeiten können.

"Importiert" habe ich die Excel mit dem "Import Data" Button, dann habe ich:
Datum als double- Array, Messwert 1/2 als double; Uhrzeit als cell

ok, soweit so gut, wenn ich jetzt einen Plot haben will mit x,y Achse...
y Achse soll einen Messwert beinhalten, x Achse die Uhrzeit (mit Angabe des Datums, d.h. einmal Datum beim 00:00:00 Wert, dann die verschiedenen Uhrzeiten, dann neues Datum für neuen Tag und wieder die Uhrzeiten)

>> plot(Datum,LeistunggemessenW) liefert den Fehler Conversion to double from cell is not possible. Genau hier hänge ich jetzt, d.h. das Datum aus Excel gleich in eine Zahl umwandeln und dann importieren klappt auch nicht wirklich....

Hat jemand von Euch eine Hilfe (nehme gern auch nen Link) zur Hand wie ich vorgehen sollte...?

LG Basti
Private Nachricht senden Benutzer-Profile anzeigen


punkNgrind
Forum-Century

Forum-Century


Beiträge: 136
Anmeldedatum: 10.03.11
Wohnort: Hamburg
Version: R2014b
     Beitrag Verfasst am: 15.07.2013, 13:13     Titel:
  Antworten mit Zitat      
Ohne mich jetzt genauer damit zu beschäftigen, aber ich glaube du solltest dich mit der Matlab-Hilfe mit folgenden Stichwörtern beschäftigen:

date
datestr
datenum
datetick

Ich hoffe du kommst damit weiter.
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: 15.07.2013, 13:46     Titel: Re: Messwerte in x,y Plot
  Antworten mit Zitat      
Hallo BastiM,

Ich importiere lieber direkt mit XLSREAD. Bevor man nun genau verstehen kann, was an Deinem Code scheitert, müssten man noch den Code selbst sehen.
"Datum" scheint ein CELL zu sein, aber warum das so ist und welche Art von Elementen es enthält kann ich nicht erraten.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 15.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2013, 13:58     Titel:
  Antworten mit Zitat      
ok!
mit code meinst du was ich ins command- window eingebe?

>> plot(D,L)

Error using plot
Conversion to double from cell is not possible.

D (also Datum) ist cell, L (Messwerte) ist double).

D hat folgendes Format:

'05.07.13 14:20' (fortfolgend 2081 Zeilen)
Private Nachricht senden Benutzer-Profile anzeigen
 
BastiM
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 15.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2013, 14:44     Titel:
  Antworten mit Zitat      
kleiner Nachtrag...

wenn ich in Excel vorher die Daten in der Datumsspalte:
formatieren ==> Zahl
ändere
dann erstellt matlab kein cell mehr, und die funktion
>> plot (D,L) erstellt dann gewünschten plot, allerdings eben ohne die richtig formatierte x- Achse...

Ich habe leider überhaupt keine Ahnung wie ich dies per Code so eingeben kann dass es funktioniert...

LG Basti
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: 15.07.2013, 15:25     Titel:
  Antworten mit Zitat      
Hallo BastiM,
Code:

Woher kommt denn D genau?

Wenn D ein Cell-String ist, kannst Du es wie bereits von punkNgrind erwähnt per DATENUM umwandel:
Code:
Dnum = datenum(D, 'dd.mm.yy HH:MM');

Nach dem Zeichnen der Grafik erlaubt DATETICK hübschere Tick-Lables. Näheres dazu unter "doc datetick".

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 15.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2013, 15:33     Titel:
  Antworten mit Zitat      
Hi,
schon mal Danke für alle Antworten!

D ist ein cell array(im Workspace dieses Vier- Quadranten- Symbol), erstellt über den Import Button von Matlab(Ursprung: xlxs- Datei)...

Wie gesagt, ich kann auch in Excel diese Spalte so umwandeln, dass ich ein Zahlenformat bekomme, bringt mich aber meiner Sache nicht näher..

Alternativ kann ich die Excel- Datei auch über xlsread einlesen, das hat schon soweit funktioniert, blos die weitere Datenverarbeitung ist noch ein Problem bisher...
Private Nachricht senden Benutzer-Profile anzeigen
 
BastiM
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 15.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2013, 16:05     Titel:
  Antworten mit Zitat      
Das kommt dann als Fehlermeldung

>> Dnum = datenum(D, 'dd.mm.yy HH:MM');
Error using datenum (line 179)
DATENUM failed.

Caused by:
Error using dtstr2dtnummx
Failed on converting date string to date number.

kann leider die Excel- Datei hier nicht anhängen...
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 - 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.