X-Achse an Nullpunkt von Y-Achse verankert - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Grafik & Sound (/Forum-Grafik-Sound) +---- Thema: X-Achse an Nullpunkt von Y-Achse verankert (/Thread-X-Achse-an-Nullpunkt-von-Y-Achse-verankert) |
X-Achse an Nullpunkt von Y-Achse verankert - IchSelbst - 08.11.2008 10:24 Hallo Leute Ich mach schon wieder mit meiner Graphik rum und brauche mal eine Hilfe. Ich möchte haben, dass die X-Achse am Nullpunkt der Y-Achse verankert bleibt. Wenn also die Scalierung der Y-Achse auf -30 bis +30 steht, soll die X-Achse AUTOMATISCH in der Mitte des Bildes stehen. Bei -15 bis +30 halt in der unteren Hälfte. Die X-Achse soll sich nach Möglichkeit automatisch setzen, notfalls würde ich auch was programmieren. Dann besteht aber das Problem: Was tun, wenn der Kunde von Hand scaliert? Weiß einer Rat? X-Achse an Nullpunkt von Y-Achse verankert - Lucki - 08.11.2008 11:37 Gebe ehrlich zu, daß ich zu doof bin das zu verstehen. Was meint Du mit "X-Achse". Meinst Du die waggrechte Linie Y=0? Kann nicht sein, die liegt ja per Definition ganz von selbst immer dort wo sie sein muss. Oder meinst Du die X-Achsen-Skala? Kann auch nicht sein, die liegt ja immer unten oder oben, aber nicht mitten im Graphenfeld. Zumindest habe ich noch nie gesehen, daß sich das ändern läßt. Oder doch? X-Achse an Nullpunkt von Y-Achse verankert - IchSelbst - 08.11.2008 14:17 ' schrieb:Gebe ehrlich zu, daß ich zu doof bin das zu verstehen.Ja, und? Wenn ich das so schreiben hätten können, dass es jeder gleich besteht, wäre ich Schriftsteller geworden und müsste meine Brötchen nicht mühsam durch Softwareerstellung verdienen. Zitat:Oder meinst Du die X-Achsen-Skala?Genau die meine ich. [*guck*] Na, ging ja doch. Zitat:Kann auch nicht sein, die liegt ja immer unten oder oben, aber nicht mitten im Graphenfeld.Genau mitten im Graphenfeld soll sie aber zu liegen kommen - der Kunde wünscht das so. Zitat:Zumindest habe ich noch nie gesehen, daß sich das ändern läßt.Genau diese Änderung möchte ich gerne haben. Zitat:Oder doch?Aber wie? X-Achse an Nullpunkt von Y-Achse verankert - Lucki - 08.11.2008 16:31 ' schrieb:Die X-Achse soll sich nach Möglichkeit automatisch setzen, notfalls würde ich auch was programmieren. Dann besteht aber das Problem: Was tun, wenn der Kunde von Hand scaliert?Wenn für Dich nur das von Hand Skalieren des Kunden das Problem ist und nicht das programmtechnische Herbeizaubern der gewünschten Eigenschaft an sich, dann liegt doch die Lösung auf der Hand: Diagramm deaktivieren und dafür sorgen, daß die Änderung der Skalierung nur über zusätzliche Bedienelemente erfolgen kann und nicht durch direktes Herumfummeln an der Graphenskala. Frage zu "notfalls würde ich was programmieren": denkst Du dabei nur an das Übereinderlegen von zwei (teilweise) transparenten Graphen oder hättest Du dazu eine echte Wunderwaffe in Hinterhand? X-Achse an Nullpunkt von Y-Achse verankert - IchSelbst - 08.11.2008 17:28 ' schrieb:Wenn für Dich nur das von Hand Skalieren des Kunden das Problem ist und nicht das programmtechnische Herbeizaubern der gewünschten Eigenschaft an sich, dann liegt doch die Lösung auf der Hand: Diagramm deaktivieren und dafür sorgen, daß die Änderung der Skalierung nur über zusätzliche Bedienelemente erfolgen kann und nicht durch direktes Herumfummeln an der Graphenskala.Moment ... Für was hab ich denn eine hochwertige Programmierumgebung? Dass ich gegebene Elemente disable und doch alles von Hand mache? Nee. Zitat:Frage zu "notfalls würde ich was programmieren": denkst Du dabei nur an das Übereinderlegen von zwei (teilweise) transparenten Graphen oder hättest Du dazu eine echte Wunderwaffe in Hinterhand?Das Übereinanderlegen bringt ja nix. Dann muss ich ja den transparenten Graphen trotzdem programmatisch anpassen, da die X-Achse ja beliebig in der Vertikalen positionierbar sein soll. Ein erster Gedanke war, das Element entsprechend anzupassen. Aber auch da hab ich nichts geeignetes gefunden, was eine automatische Positionierung machen könnte. Es gibt ein Property XAchse.Position, mit der ich das machen könnte. Die X-Position der X-Achsen-Position würde ja automatisch stimmen. Beachte hier: die Breite der Y-Achse kann unterschiedlich sein je nach maximaler Scalierung. Damit ändert sich aber die X-Position der X-Achsen-Position. Problematisch ist die Y-Position der X-Achsen-Position. Deren Berechnung ist nämlich nicht ganz trivial, da hier nicht nur die Höhe der Y-Achse eingeht, sondern auch noch deren relative Position im Graph-Element (letzteres muss ich aber erst verifizieren). Dann hab ich mir doch gedacht: Wenn es schon dieses Property gibt, warum gibt es nicht auch eine interne Methode für meine Aufgabe. Also meine Frage: Wer weiß wie's geht, oder: Wer weiß, dass es nicht geht? X-Achse an Nullpunkt von Y-Achse verankert - jg - 08.11.2008 19:54 Hallo, auch meines Wissens nach kannst du die x-Achse bei einem 2D-Graphen (also Waveform oder XY) nur ober- oder unterhalb des Graphen platzieren. Hier aber 2 Ideen, mit denen du x=0 hervorheben kannst: 1. Ein weiterer Plot bei x=0 2. Ein Cursor mit entsprechenden Eigenschaften bei x=0, hierzu ein Bsp: [attachment=15230] Alternativ müsstest du dir mit einem LV-Picture selber was erstellen, dazu gibt es einige Bsp im NI-Examplefinder. Gruß, Jens X-Achse an Nullpunkt von Y-Achse verankert - IchSelbst - 09.11.2008 00:23 ' schrieb:2. Ein Cursor mit entsprechenden Eigenschaften bei x=0Cursor ist immer eine gute Wahl. Fest fixiert und quasi deaktiviert bildet der dann "den waagrechten Strich" der X-Achse. Nachfolgend die Positionierung der X-Achse mittels Property-Nodes an Y=0. Kann mal jemand an folgendes ausprobieren: YMax=100; dann YMin=-100; dann YMax=0; dann sagen, was passiert ist. X-Achse an Nullpunkt von Y-Achse verankert - kpa - 09.11.2008 09:48 Hallo, hier ist ein Beispiel mit 2 zusätulichen Geraden bei x=0 und y=0. Den Bereich der Achsen(Länge der Geraden) habe ich auf -1000 bis +1000 gesetzt. Bei Verwendung vom Zoomwerkzeug ("Alles anzeigen") muss man da halt die min- und max- Werte vom Graphen einfügen. kpa X-Achse an Nullpunkt von Y-Achse verankert - Lucki - 09.11.2008 16:01 ' schrieb:Kann mal jemand an folgendes ausprobieren: YMax=100; dann YMin=-100; dann YMax=0; dann sagen, was passiert ist.Bei mir funktioert das nicht und ich bekomme es auch nicht hin daß es funktioniert. Bei Änderung das Y-Bereiches änerdert sich "Y-Achse oben", der Plotbereich wird oben kleiner. Der Versuch, den Bereich durch Einschreiben des ursprünglichen Wertes in die Eigenschaft "Y-Achse.Oben" wieder herzustellen, scheitert: des Schreiben funktioniert einfach nicht. [attachment=15234] Also ich sehe auch keine andere Möglichkeit, als den Kunden der das wünscht dahingehend umzukonfigurieren, daß er sich mit eine Vertärkung des Achsenkreuzes zufrieden gibt und nicht darauf besteht, dort auch noch die Skala zu haben. Die einfachste Lösung dafür ist eine freier, nicht verschiebbarer Cusor. Dafür ist nicht mal ein Eigenschaftsknoten erforderlich, einfach in den Diagrammeigenschaften konfigurieren. Pos x,y = 0,0 ist sowieso die Grundstellung: [attachment=15235] X-Achse an Nullpunkt von Y-Achse verankert - IchSelbst - 09.11.2008 16:55 ' schrieb:Bei mir funktioert das nicht und ich bekomme es auch nicht hin daß es funktioniert.Da bin ich ja froh, dass das nicht nur bei mir so ist. Zitat:nicht darauf besteht, dort auch noch die Skala zu haben.Und was sag ich wenn er fragt warum? Das liegt an LabVIEW, damit muss er sich zufrieden geben? Zitat:Die einfachste Lösung dafür ist eine freier, nicht verschiebbarer Cusor.Für die X-Linie ist der sehr gut. Ich habs jetzt so gemacht (Bild und LV 80). Ich muss natürlich dazu sagen, dass die Sache doch nicht ganz so heiß ist, wie ich sie bisher dargestellt habe. Bei dem Graphen handelt es sich um eine Darstellung eines Drehmomentes für Vorwärts- und Zurückbewegung. Also ist die Y-Achse meistens symetrisch. Und für Abweichungen bis 50% der Absolutwerte funktioniert das Prositionieren ja. |