Hi!
Ich möchte gerne in ein XY-Diagramm 2 horizontale Linien einfügen, und zwar jeweils 10% unter bzw. über einem bestimmten Höchstwert, der bei jedem Programmdurchlauf anders sein kann. Ich habe schon gelesen, dass man Cursor einfügen kann, aber wie kann ich die denn von einem bestimmten y-Wert abhängig machen lassen?
Danke schonmal!
(22.06.2016 13:35 )Kubi1 schrieb: [ -> ]Ich habe schon gelesen, dass man Cursor einfügen kann, aber wie kann ich die denn von einem bestimmten y-Wert abhängig machen lassen?
...in dem du über die Eigenschaft Cursor-Index den entsprechenden Cursor auswählst und ihm dann einen neuen Y-Wert zuweist (auch über Eigenschaftsknoten)
Gruß, Marko
Andere Alternative:
Einfach zwei weitere Plots im Graphen darstellen. Einer für den Max-, einer für den Min-Wert…
(Da kann der User dann nicht dran rumspielen!)
anbei mal ein Beispiel. Die Cursor kannst du auf nicht verschiebbar setzen, dann kann sie der user auch nicht manipulieren. (Ist in meinem Beispiel schon so gesetzt)
Gruß, Marko
Danke für eure Hilfe!
@GerdW: 2 weitere Plots zu erstellen war auch mein erster Gedanke, allerdings hat das nicht gut funktioniert... Ich hatte jeweils zwei gleich lange Arrays, einer gefüllt mit dem y-Wert, der andere mit linear steigenden x-Werten. Die horizontalen Graphen wurden dann leider immer durch eine Linie mit dem Ursprung des KOSY's verbunden... Habe leider keinen Screenshot davon.
@Trinitatis: Danke für das VI, das funktioniert!
Kurze Frage am Rande: Wieso sind die Label über den Knoten in deinem VI in relativ kleiner Schrift und eingekästelt? Ist bei mir anders!
Nächstes Problem: Ich hätte gerne, dass die beiden horizontalen Graphen bei Bedarf auf der x-Achse liegen (also y=0). Ich habe einen Screenshot von meinem Lösungsansatz unten angehängt. Im "False"-Fall bleiben die Cursor leider da liegen, wo sie zuvor waren...
(23.06.2016 07:33 )Kubi1 schrieb: [ -> ]Nächstes Problem: Ich hätte gerne, dass die beiden horizontalen Graphen bei Bedarf auf der x-Achse liegen (also y=0). Ich habe einen Screenshot von meinem Lösungsansatz unten angehängt. Im "False"-Fall bleiben die Cursor leider da liegen, wo sie zuvor waren...
Auf dem Bild sieht es so aus, als ob du ein leeres Array an die Schleife übergibst. Also wird sie gar nicht ausgeführt.
Du hast Recht, die beiden Nuller im Array waren ausgegraut. Ich habe jetzt manuell 2 Nuller reingeschrieben, jetzt sind sie schwarz, d.h. das Array ist nicht mehr leer, gell?
Funktioniert trotzdem nicht!
Habe auch probiert, mit der "Cursor.Visible"-Eigenschaft zu arbeiten (d.h. die Cursor auszublenden anstatt bloß auf die x-Achse zu legen), aber da tut sich auch nichts... (Screenshot)
Hallo Kubi,
Zitat:@GerdW: 2 weitere Plots zu erstellen war auch mein erster Gedanke, allerdings hat das nicht gut funktioniert... Ich hatte jeweils zwei gleich lange Arrays, einer gefüllt mit dem y-Wert, der andere mit linear steigenden x-Werten. Die horizontalen Graphen wurden dann leider immer durch eine Linie mit dem Ursprung des KOSY's verbunden... Habe leider keinen Screenshot davon.
Fehlerursache: Da waren wohl nicht die richtigen Daten in den Plots…
Grund dafür: deine Programmierung, die du uns leider nicht zeigst…
- Um eine Linie von (0,2.5) nach (10,2.5) zu zeichnen, müssen genau diese beiden Punkte im Plot vorhanden sein. Nicht mehr und nicht weniger…
- Und wenn eine Linie von (0,0) nach (10,0) laufen soll, musst du eben diese beiden Punkte in den Plot schreiben…
Wir reden doch hier immer noch von einem XY-Graph, oder?
Zitat:Ich habe jetzt manuell 2 Nuller reingeschrieben, jetzt sind sie schwarz, d.h. das Array ist nicht mehr leer, gell?
Wir reden jetzt über LabVIEW-Grundlagen aus den beginner-Kursen. Die hast du doch gemacht, oder?
Zitat:Funktioniert trotzdem nicht!
Was genau funktioniert nicht?
Wie sieht dein VI aus?
Was hat das Debugging ergeben?
Wird der Code-Teil überhaupt ausgeführt?
Sind die Cursor überhaupt vorhanden, wenn du diesen Codeteil ausführst?
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Fehlerursache: Da waren wohl nicht die richtigen Daten in den Plots…
Grund dafür: deine Programmierung, die du uns leider nicht zeigst…
- Um eine Linie von (0,2.5) nach (10,2.5) zu zeichnen, müssen genau diese beiden Punkte im Plot vorhanden sein. Nicht mehr und nicht weniger…
- Und wenn eine Linie von (0,0) nach (10,0) laufen soll, musst du eben diese beiden Punkte in den Plot schreiben…
Wir reden doch hier immer noch von einem XY-Graph, oder?
Ja, immernoch XY-Graph. Habe leider nicht gespeichert, darum kann ich euch nichts mehr zeigen... Würde das Problem mittlerweile sowieso lieber mit Cursorn lösen.
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Wir reden jetzt über LabVIEW-Grundlagen aus den beginner-Kursen. Die hast du doch gemacht, oder?
Ich arbeite erst seit Kurzem mit Labview und nein, ich habe keinen Beginner-Kurs gemacht...
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Was genau funktioniert nicht?
Die Cursor bleiben im Diagramm, auch wenn der Case "false" ausgewählt ist. Sie bleiben übrigens an der Stelle, an der sie waren, bevor ich den Boolean-Wert geändert habe...
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Wie sieht dein VI aus?
Habe nun einen kompletten Screenshot sowie das VI hochgeladen.
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Wird der Code-Teil überhaupt ausgeführt?
Habe gerade die "Highlight Execution" Funktion ausgeführt (weiß den deutschen Namen nicht, auf jeden Fall die Glühbirne oben im Blockdiagramm), und ja, sie wird anscheinend ausgeführt
(23.06.2016 08:07 )GerdW schrieb: [ -> ]Sind die Cursor überhaupt vorhanden, wenn du diesen Codeteil ausführst?
Ja, im Haupt-VI schon, allerdings wie gesagt nicht an der richtigen Stelle (das hier gepostete VI benutze ich als SubVI)
Danke für die Mühen!
Ziehe mal den Eigenschaftsknoten der Cursor um 1 Element auf und setze die Eigenschaft "sichtbar" und die dann auf TRUE. Dann kannste auch deine Cursor sehen. Auf diese Art könntest du sie dann auch ausblenden und nicht auf "0" setzen.
Im übrigen gehört es sich, hier im Forum VIs mit gespeicherten Default-Daten in den Eingangsarrays hochzuladen. Dann muss sich nicht jeder deine Daten ausdenken.
Gruß, Marko