Verfasst am: 24.10.2011, 17:28
Titel: automatischer speicher eines plotes fehlgeschlagen
hallo zusammen,
ich hätte eine wichtige Frage:
ich möchte mir gerne einen plot völlig automatisch abspeichern!
Völlig automatisch ist mir von besonderer Bedeutung da ich demnächst Grafiken für ca. 2000 Dateien erstellen möchte und diese ebenfalls abspeichern möchte ohne dies per Hand zu machen.
Als Übung habe ich es mal für eine Datei ausprobiert:
Mein Skript sieht wie folgt aus:
Code:
[time vel std number]=textread(['vel_o_5_700_y5_z75.txt'],'%f%f%f%f','delimiter','\t','headerlines',1);
Allerdings klappt das nicht ganz da ich zum einen dazu aufgerufen werde den Dateinamen einzugeben und zum anderen klappt mit dem pfad etwas nicht!ich möchte ja gern die Datei in
Zusätzlich schicke ich euch mal ein Screenshot des ungewollten Speicherortes (links) und die Hierarchie meiner Ordner (rechts) damit ihr mein Problem besser versteht!
Vielleicht könnt ihr mir ja helfen-dankbar wäre ich auf jeden fall!
du kannst file und path bei dem saveas-Befehl ja auch selbst angeben.
path sollte klar sein, und file könntest du in Abhängigkeit vom Namen der eingelesenen Datei definieren.
Weitere Empfehlungen für die 2000 Dateien:
- Mit DIR eine Liste der Dateien zusammenstellen
- Damit die Figures nicht alle gerendert werden:
habe gestern nach dem ich hier meine frage hineingestellt habe weiter probiert und bin dann anderweitig zum ziel gekommen (zumindest fast)!
und zwar konnte ich mit:
alle in der schleife erzeugten plots automatisch in den aktuellen ordner speichern! zwar musste ich danach alle datei noch umordnen was ja nicht viel arbeitet macht!
...aus interesse:
gibt es denn eine mgl.keit den gewünschten speicherort zu bestimmen (in kombination mit print('.....))?
Das Öffnen einer neuen FIGURE und das Erstellen der 3 AXES benötigt viel Zeit. Du könntest auch die eine FIGURE immer offen halten und nur das LINE-Objekt erneuern, das mit PLOT erzeugt wird:
Beim automatischen Erzeugen von 2000 Grafiken ist das nicht soo wichtig, da es egal ist, ob die Pause für einen Kaffee reicht, oder noch für ein Stück Kuchen dazu. Wichtig wird das, wenn der Nutzer vor dem Rechner wartet, da dann alles über 5 Sekunden Stress bedeutet. Oder wenn man 100.000 Grafiken erzeugen muss und der Java-Heap-Speicher voll läuft, da das Löschen eine FIGURE den Speicher nicht sofort wieder freigibt.
Man könnte auch noch einen Schritt weiter gehen und sich direkt die Handles der LINE-Objekte merken und nur diese per "set(Line1H, 'YData', vel)" updaten. Bei Echtzeit-Anwendungen wäre das die beste Idee.
vielen dank.
für einen anfänger (wie ich es ja bin) sind solche tipps und hinweise von immenser bedeutung (für mich auf jeden fall) da das analysieren eines zweiten lsg.weges vieles neues offenbart!
werd die tipps gleich mal einbauen!
vielen dank an dich/euch!
mfg,
waldemar
_________________
Im "ich brauch Hilfe"-Status
Einstellungen und Berechtigungen
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
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.