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

Zeilenumbruch im Text

 

smint

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.05.2008, 15:27     Titel: Zeilenumbruch im Text
  Antworten mit Zitat      
Hallo,
ich habe gesehen, dass es schon ein paar Beiträge bezüglich Zeilenumbruch gab, aber eine Lösung für mein Problem habe ich leider nicht gefunden. Es ist bestimmt ganz einfach und ich seh den Wald vor lauter Bäumen nicht...

"dlmwrite('testplot.dat',['VARIABLES = "X", "Y", "C" ' ...
'ZONE I=',jj(1),' J=',kk(1), 'DATAPACKING=POINT'],'delimiter','');"

Ich hätte gerne einen Zeilenumbruch nach den Variablen X, Y C und ganz am Schluss, weil ich Messdaten am Schluss anhängen will. Aber es klappt weder mit \n ,\newline, mit oder ohne '. Außerdem werden im Editor keine Zahlen für jj(1) und kk(1) ausgegeben sondern nur rechteckige Kästchen. Dabei sind jj und kk 1x2 Matrizen. Danke schon mal im Voraus


steffi
Forum-Century

Forum-Century



Beiträge: 149
Anmeldedatum: 07.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.05.2008, 15:53     Titel:
  Antworten mit Zitat      
versuch mal das:

Code:
zelle=cell(2,1);
zelle{1,1}=['erste Zeile'];
zelle{2,1}=['zweite Zeile'];
text(x_pos,y_pos,{zelle{1,1}; zelle{2,1}})


viele Grüße
_________________

Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
Private Nachricht senden Benutzer-Profile anzeigen
 
outsider
Forum-Meister

Forum-Meister


Beiträge: 806
Anmeldedatum: 03.09.07
Wohnort: München
Version: R2012b
     Beitrag Verfasst am: 27.05.2008, 20:48     Titel:
  Antworten mit Zitat      
geht noch einfacher
Code:
text(x_pos,y_pos,sprintf('erste zeile\nzweite zeile'))



MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Mathprof

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2011, 09:40     Titel: antwort zeilenumbruch
  Antworten mit Zitat      
steffi hat Folgendes geschrieben:
versuch mal das:

Code:
zelle=cell(2,1);
zelle{1,1}=['erste Zeile'];
zelle{2,1}=['zweite Zeile'];
text(x_pos,y_pos,{zelle{1,1}; zelle{2,1}})


viele Grüße


Hallo

Das funktioniert nie.
Bei bearbeitung von mehreren Elementen, muss jedes element immer gleich lang sein. Vor allem Strings.
bei dir ist der erste String 'erste Zeile' 11 chars lang
und der zweite 12.
Tipp, deine lösung funktioniert du musst einfach nach 'erste Zeile' noch ein
Leerzeichen einfügen 'erste Zeile '.

Es gibt nur einen String Array der von oben bis unten nxm charakters hat.
Das gilt auch z.B. wenn man von cell2mat umwandelt.

Da das Zellenformat eigendlich in jeder Zelle unterschiedlich lange strings haben kann, muss jede Zelle einzeln in ein String umgewandlet und bearbeitet werden. Mit Ganzen Vektorabschnitten funktioniert es nicht.

Sorry für Rechtschreibung, bin im stress.
 
Mathprof

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.06.2011, 09:32     Titel: Re: antwort zeilenumbruch
  Antworten mit Zitat      
Mathprof hat Folgendes geschrieben:
steffi hat Folgendes geschrieben:
versuch mal das:

Code:
zelle=cell(2,1);
zelle{1,1}=['erste Zeile'];
zelle{2,1}=['zweite Zeile'];
text(x_pos,y_pos,{zelle{1,1}; zelle{2,1}})


viele Grüße


Hallo

Das funktioniert nie.
Bei bearbeitung von mehreren Elementen, muss jedes element immer gleich lang sein. Vor allem Strings.
bei dir ist der erste String 'erste Zeile' 11 chars lang
und der zweite 12.
Tipp, deine lösung funktioniert du musst einfach nach 'erste Zeile' noch ein
Leerzeichen einfügen 'erste Zeile '.

Es gibt nur einen String Array der von oben bis unten nxm charakters hat.
Das gilt auch z.B. wenn man von cell2mat umwandelt.

Da das Zellenformat eigendlich in jeder Zelle unterschiedlich lange strings haben kann, muss jede Zelle einzeln in ein String umgewandlet und bearbeitet werden. Mit Ganzen Vektorabschnitten funktioniert es nicht.

Sorry für Rechtschreibung, bin im stress.



Hallo Wieder.

Ich habe nicht gesehen, das es sich bei dir um Zellformate gehandelt hat, dann müssen die untereinander liegenden Strings, nicht gleich lang sein, solange sie in verschiedenen Zellen sind.

in Matlab wird eine zelle mit {} erzeugt.

Das kann in text übertragen werden:

z.B. xlabel({'erste Zeile';'zweite Zeile blablabla'})
Falls es automatisch zentriert wird, kann mit dem Property:

xlabel({'erste Zeile';'zweite Zeile blablabla'},'HorizontalAlignment','left')

Der ganze Text linksbündig gehalten werden.
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 04.06.2011, 17:18     Titel: Re: Zeilenumbruch im Text
  Antworten mit Zitat      
Hallo smint,

Nun haben Dir mehrere User Beispiele gegeben, wie man mehrere Zeilen in ein TEXT-Objekt in einer FIGURE einfügt. Allerdings klingt Deine Frage wegen des "DLMWRITE" eher so, als wollest Du in ein File schreiben, oder??

Die Kästchen für jj und kk kommen daher, dass Du die Zahlen nicht in Strings umgewandelt hast, siehe SPRINTF oder NUM2STR.

Zitat:
"dlmwrite('testplot.dat',['VARIABLES = "X", "Y", "C" ' ...
'ZONE I=',jj(1),' J=',kk(1), 'DATAPACKING=POINT'],'delimiter','');"

Diesen Befehl verstehe ich gar nicht. DLMWRITE schreibt eigentlich numerische Arrays. Möglicherweise suchst Du etwas wie dies:
Code:

fid = fopen('testplot.dat', 'w');
if fid < 0, error('Cannot open file'); end
fprintf(fid, ['VARIABLES = "X", "Y", "C" ZONE ', ...
                 'I=%d,%d J=%d,%d DATAPACKING=POINT\n', ...
                  jj, kk);
fclose(fid)

Gruß, Jan
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.