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 mit pcolor für große Anzahl an Werten

 

Spidy
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.01.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.01.2015, 21:22     Titel: Plot mit pcolor für große Anzahl an Werten
  Antworten mit Zitat      
Hi, ich bin Matlab-Anfänger und habe eine Frage.

Ich habe eine .dat Datei mit dem Namen 'emwNormE.dat' welche die Werte x,y,z enthält. Hierbei handelt es sich um Ortskoordinaten (x,y) und der entsprechende Wert an dieser Stelle (z). Leider sind es sehr viele Daten (sprich ca. 26 000) je Spalte.

Ich möchte die Datei importieren und dann plotten. Was ist der beste Weg?

So habe ich es u.a. versucht:

Code:

clc;clear all;close all;
 
load emwNormE.dat;    %  read data
x =emwNormE(:,1);     %  copy first column of my_xy into x
y =emwNormE(:,2);     %  and second column into y
z =emwNormE(:,3);     %  and third column into z
 
[X,Y,Z]=meshgrid(x,y,z)
 
pcolor(X,Y,Z)
 


Als Feherlmeldung bekomme ich:

Code:
Error using repmat
Out of memory. Type HELP MEMORY for your options.
 
Error in meshgrid (line 77)
        xx = repmat(xx, ny, 1, nz);
 
Error in MyFirstMatlabFile (line 8)
[X,Y,Z]=meshgrid(x,y,z)


Alternativ könnte ich meine Daten anstatt in .dat auch als .csv oder .txt ausgeben lassen, falls Matlab das lieber mag.

Könnt ihr mir weiter helfen? Wie würdet ihr diese Daten ploten?

Grüße,

Spidy
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 16.01.2015, 22:37     Titel:
  Antworten mit Zitat      
wie dir die fehlermeldung schon sagt scheinst du nicht genug speicher zu haben. du versuchst immerhin 3 gitter von jeweisl 26000x26000 einträgen zu generieren mit meshgrid. das sind jeweisl ca 5gb pro gitter. wenn du also nicht 15 gb ram frei hast und oder keine 64 bit version benutzt wird es da eng. mir erschliest sich aber auch nicht der grund ein gitter von 26000x26000 generieren wenn du wahrscheinlich nur eine bildschirmauflösung von 1920x1080 hast Smile
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Spidy
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.01.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2015, 16:09     Titel:
  Antworten mit Zitat      
Danke für deine Antwort. Wenn ich das richtig verstehe muss ich also einen Weg finden, die Anzahl meiner Datenpunkte zu reduzieren. Ich überlege mir mal wie das geht (die Daten habe ich aus dem Programm Comsol exportiert). Evtl. werde ich mich danach noch einmal hier melden Wink

Cheers,

Spidy
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 18.01.2015, 16:14     Titel:
  Antworten mit Zitat      
vieleicht kann dir geholfen werden wenn du einen kleineren beispiel daten satz zur verfügung stellst der deine daten nachbildet und genau beschreibst was du als ergebniss willst. vieleicht gibt es ja einen einfachen weg. aber ja die reduzierung der daten auf ein "sinnvolles" maß ist sicher ratsam. nicht nur das es vieleicht dein problem löst sondern es spaart auch rechenzeit Smile
wie gesagt. eine höhere auflösung als dein bildschirm ist ja nur nötig wenn du nachträglich viel zoomen willst. Smile
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Spidy
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.01.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2015, 16:26     Titel:
  Antworten mit Zitat      
Vielen Dank an alle,

meshgrid hat in meinem Fall tatsächlich keinen Sinn gemacht. Ich habe die Werte jetzt anderes aus meinem Program (Comsol) exportiert und lese sie jetzt mit dem Matlab Befehl csvread ein. Die Daten kann ich jetzt einfach mit pcolor ploten und alles ist so wie ich es mir wünsche. Es war also eher ein Comsol Problem und wie ich die Daten am besten ausgebe um sie später mit Matlab richtig zu lesen / ploten.

Danke für die Hilfe Smile
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.