Mesh Funktion in Matlab



  • Hallo zusammen
    Ich habe gerade ein wenig Problemw mit der Meshfunktion in Matlab und zwar möchte ich auf der einen Achse anstattt numerische Werte Strings verwenden. Das hört sich vielleicht seltsam an also versuche ich zu erklären, was ich machen möchte:

    Ich habe ein Funktion mit zwei Argumenten (desshalb 3D Plot) wobei diese Funktion nicht mathematisch ist, sondern einfach einen Messwert für jedes Parametertupel zurückgibt. Nun ist es so, dass der eine Parameter eine Klasse ist, also kein numerischer Wert sondern ein String. Ich bräuchte also nun für die eine Achse einen Vektor von Strings, das Problem ist nur, dass size(['Klassenname']) 1,11 zurückgibt, weil er eben jedes Zeichen als ein Matrizenelement intrpretiert. Wie bringe ich Matlab dazu, dies als ein Matrixelement zu betrachten?

    Mfg Samuel



  • Ishildur schrieb:

    Ich habe gerade ein wenig Problem mit der Meshfunktion in Matlab und zwar möchte ich auf der einen Achse anstattt numerische Werte Strings verwenden. Das hört sich vielleicht seltsam an also versuche ich zu erklähren, was ich machen möchte:

    Das hört sich bisher überhaupt nicht seltsam an. Leider hab ich keine Ahnung, ob und wie das geht :p

    Ich habe ein Funktion mit zwei Argumenten (desshalb 3D Plot) wobei diese Funktion nicht mathematisch ist, sondern einfach einen Messwert für jedes Parametertupel zurückgibt. Nun ist es so, dass der eine Parameter eine Klasse ist, also kein numerischer Wert sondern ein String. Ich bräuchte also nun für die eine Achse einen Vektor von Strings, das Problem ist nur, dass size(['Klassenname']) 1,11 zurückgibt, weil er eben jedes Zeichen als ein Matrizenelement intrpretiert. Wie bringe ich Matlab dazu, dies als ein Matrixelement zu betrachten?

    Suchst du vielleicht Cell-Arrays?

    A = {'Hallo' 'Welt'};
    size(A) % => [1 2]
    B = A{2} % => B ist 'Welt'
    

    Ob man damit Achsen bezeichnen kann weiß ich nicht. mesh ist dafür aber nicht der richtige Ansprechpartner, der malt nur die Funktion in ein Koordinatensysten. Vielleicht mal bei axis (oder gab es auch axes ?) nachschauen. Im Notfall geht es wahrscheinlich über Grafik-Handles.


Anmelden zum Antworten