Verfasst am: 29.09.2015, 00:08
Titel: Textbox in plot mit Tabelle
Hallo,
ich möchte gerne eine Tabelle in einen Plot einfügen. Die Tabelle bekomme ich auch hin aber leider nicht die größe und Position in meine grafik. Eigentlich möchte ich das ganze lieber als "nackte" tabelle ohne die scroll balken haben.
Mein Beispiel sieht bisher so aus: (Das wäre dann ohne die Balken aber hier bekomme ich keine Tabelle hin, insbesondere nicht mit mehreren variablen werten.
Danke für die Antwort. Leider komme ich mit der Positionierung und Größe nicht weiter.
Im Anhang ist ein Bild wie es aussieht und wie ich es gern hätte.
Der Grafikeditor von Matlab ist auch nicht mehr bedienbar wenn ich die Tabelle mit öffne. Diesen benötige ich aber unbedingt für den Feinschliff.
Die Tabelle sieht klasse aus, das stimmt. Ich hätte sie aber lieber simpler als Textbox.
Ich weiß wie man Tabellen in Latex schreibt. Geht dies hier auch?
Oder hat jemand einen Tipp, wie ich beide Grafiken in eine verbinde und es mehr in Richtung meines Wunsches bekomme?
( Die exakte Position und Größe werde ich selber anpassen danach frage ich hier natürlich nicht!)
% plot----------------------------------------------------------------
End_of_Plot=Start_time+110000; %Plot ends after 55seconds
plot(xtVacuumSupplyPressure2HSBa,'r','LineWidth',2) title('Performance curve'); % creates a title above the plot axis([Start_time End_of_Plot 0.01.030]); % the function axis([x1 x2 y1 y2]) scales the axis between the sections x1-x2 and y1-y2 xlabel('time [ms]'); % labels the x- axis ylabel('pressure [bar]'); % labels the y-axis hold on;
grid% generates a grid on the plot
plot(t_500mbar,p_500mbar,'r.','MarkerSize',15); % creates a bullet point plot(t_700mbar,p_700mbar,'r.','MarkerSize',15); % creates a bullet point plot(t_900mbar,p_900mbar,'r.','MarkerSize',15); % creates a bullet point
So Plotte ich. Ich habe schon an einen Subplot gedacht, da die Tabelle doch immer größer wird.
Ich möchte aber auch noch Text über der Tabelle ergänzen und hätte daher gerne die Möglichkeit auch eine lange Spalte über drei kürzeren Spalten zu generieren.
Wie gesagt, wenn ich die Möglichkeit hätte einfach einen Text zu schreiben mit mehreren Variablen wäre das schon genug eigentlich.
% plot----------------------------------------------------------------
End_of_Plot=Start_time+110000; %Plot ends after 55seconds
plot(xtVacuumSupplyPressure2HSBa,'r','LineWidth',2) title('Performance curve'); % creates a title above the plot axis([Start_time End_of_Plot 0.01.030]); % the function axis([x1 x2 y1 y2]) scales the axis between the sections x1-x2 and y1-y2 xlabel('time [ms]'); % labels the x- axis ylabel('pressure [bar]'); % labels the y-axis hold on;
grid% generates a grid on the plot
% plot(t_500mbar,p_500mbar,'r.','MarkerSize',15); % creates a bullet point % plot(t_700mbar,p_700mbar,'r.','MarkerSize',15); % creates a bullet point % plot(t_900mbar,p_900mbar,'r.','MarkerSize',15); % creates a bullet point %
Es sieht schon viel besser aus, hat aber immer noch viele Schönheitsfehler. (Für meine Masterarbeit möchte ich ausschließlich perfekte Abbildungen verwenden)
Normal benutze ich immer den Grafikeditor für den Feinschliff. Wenn ich diese Tabelle plotte ist dieser quasi deaktiviert. Das ist sehr ungünstig. Ich kann die Tabelle anpassen, aber sonst nichts.
Dann ist ist spalte 2 und 3 einmal der Text links und rechts reingerückt?!
Wie man in meiner Abbildung sieht, ist noch sehr viel unbenutzer Bereich grau unterlegt.
Kann ich die Tabelle evtl in einen Subplot schöner unterbringen?
Ich möchte insbesondere die Tabelle ohne den grauen bereich rechts und unten haben.
Gibt es andere alternativen? Hier sind denke ich die Balken das Problem. Sehen toll aus, möchte ich jedoch nicht haben
Den Grafik Editor kann ich "halb" aktivieren. Leider habe ich nicht vollen Zugriff auf alle Funktionen wie sonst, aber vielleicht finde ich das ja auch noch.
Ich habe noch ein Bild angefügt. Hier ist es quasi schon Perfekt aus. Allerdings ist das immer noch ein "Gefummel" bis dahin.
Kann man irgendwie im Rückschluss die Koordinaten auslesen? Mit "generate Code" geht es nicht.
Das die dritte Spalte anders eingerückt ist als die zweite stört auch sehr.
Edit: Mensch du bist echt schnell. Ich muss erstmal weiter rumprobieren!
Dann ist ist spalte 2 und 3 einmal der Text links und rechts reingerückt?!
Vermutlich weil du einmal Zahlen und einmal in Strings umgewandelte Zahlen hast. Was du damit bezweckst, weiß ich nicht. Ich würde aber mal versuchen, das wegzulassen.
Zitat:
Wie man in meiner Abbildung sieht, ist noch sehr viel unbenutzer Bereich grau unterlegt.
Dann mach den Bereich, in dem der uitable dargestellt wird, doch über 'Position' kleiner. Oder mach die Figure kleiner.
Zitat:
Hier sind denke ich die Balken das Problem.
Welche Balken denn? Falls es um die wechselnde Unterlegung der Zeilen geht: 'RowStriping' auf 'off' stellen.
Also ich meine mit Balken die Scroll Balken welche erscheinen wenn die Tabelle größer als die Box ist.
Das Problem mit dem rechts reinrücken ist behoben.
Wenn ich in Position bei set wie bei uitable die koordinaten verändere, dann wird das anzeige bild auf meinem Monitor an unterschiedlicher position geöffnet, was ich vollkommen unnütz finde. Ich möchte das Bild direkt maximal groß, also nicht verkleinert dargestellt haben, und hier soll direkt alles passen.
Hier ändert sich zwar die Größe der Tabellle, aber nicht Ihre Position relativ zum dahinter liegenden Bild.
Ich jedenfalls bekomme es leider gar nicht hin mit "herrumprobieren"
Mit nacheditieren bekomme ich es zu 99% perfekt hin, ich möchte es aber gerne automatisch direkt schon generieren.
Meine Werte werden mit einer Samplingrate von 2000Hz aufgenommen.
Plotten tue ich das ganze aber erst nach x messungen.
An dieser Stelle hätte ich gerne 0s und den Rest der x Achse auch auf Sekunden skaliert.
Nun muss ich die Werte der x-Achse nur mit 0.0005 multiplizieren. Leider weiß ich nicht wie ich dies als Voreinstellung für bspw. xtick anwende.
Ach weiß ich nicht wie ich mir einen t vektor erstelle der genau auf die Daten passt in sekunden. Theoretisch müsste ich ja mit Linspace oder etwas ähnlichem einen Vektor der Länge des Bereichs erstellen den ich plotten möchte mit meiner schrittweite.
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.