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

Saveas Figure mit variablen Namen

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2011, 12:54     Titel: Saveas Figure mit variablen Namen
  Antworten mit Zitat      
moin,

ich habe ein kleines matlab-skript geschrieben, welches aus einer excel-file von jedem sheet die daten ausliest, diese anzeigt und anschließend die bilder abspeichert (funktioniert 1a), allerdings habe ich das problem, dass die sheet-namen bpsw. so aussehen: C_1=1,C_2=0 (bei vorherige simulation wurden hauptsächlich die beiden variablen C_1 und C_2 geändert) und dem entsprechend nicht mit num2str abgespeichert werden können. wie kann ich die bilder trotzdem als C_1=1,C_2=0.tif abspeichern (workaround mit laufvariable numstr(i-1) funktioniert)?


Code:
format long
clear all
clc

[type, desc, fmt]=xlsfinfo('G:\**.xls');
desc_length=length(desc);
clear type fmt

for i=2:desc_length
    import=xlsread('G:\**.xls',i);
    **
    mesh(x_fine,y_coarse,z_wv);
    saveas(gcf,['G:\***',num2str(desc(i))],'tiffn');
end
 


eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 12.12.2011, 12:57     Titel:
  Antworten mit Zitat      
Wenn in desc 'C_1=1' drinsteht, ist es doch bereits ein String... Daher einfach num2str weglassen?!?
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2011, 14:13     Titel:
  Antworten mit Zitat      
wenn ich folgende zeile nutze:
Code:

    saveas(gcf,['G:\....\',desc(1,i)],'tiffn');
 


dann führt das zu:

??? Error using ==> saveas at 81
Invalid filename.
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 12.12.2011, 14:58     Titel:
  Antworten mit Zitat      
Moin,

lass dir den Filename vorher zusammenbasteln und probeweise mal ausgeben, dann siehst du am schnellsten, wo das Problem liegt:
Code:
FileName = ['G:\....\',desc(1,i)];
saveas(gcf,FileName,'tiffn');


Zusätzlich bist du damit bei deiner Programmierung flexibler.

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2011, 16:00     Titel:
  Antworten mit Zitat      
hi,

das bringt leider auch nix, habe mal anfang des skriptes

Code:

savepath('G:...');
 


gesetzt und daher ist filename nun nur noch die 1x1 zelle

C_1=1,C_2=0

mit dem immer noch gleichen fehler:

Code:

??? Error using ==> saveas at 81
Invalid filename.

Error in ==> Auswertung_bimodal at 30
    saveas(gcf,filename,'tiffn');
 
 
Harald
Forum-Meister

Forum-Meister


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

wenn du aus einem Cell Array einzelne Strings extrahieren willst, musst du geschweifte Klammern {} verwenden.

Alternativ kannst du ein Cell mit CHAR in einen String umwandeln.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2011, 16:33     Titel:
  Antworten mit Zitat      
Hallo,

danke nun läuft es:

Code:

    filename=['G:\...\',char(desc(1,i)),'.tif'];
    saveas(gcf,filename,'tiffn');
 
 
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.