INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

2d StringArray



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

03.03.2023, 15:16
Beitrag #1

simcum Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 113
Registriert seit: May 2015

2016
2010
DE


Deutschland
2d StringArray
Hallo zusammen,

ich arbeite mit relativ großen Messdateien die als txt Dateien abgespeichert werden.

Diese Dateien möchte ich gerne bearbeiten und als Diagramme abbilden.

Wie das zu machen ist weiß ich, mir geht es mehr um die Optimierung der Geschwindigkeit.

Also ich lade die txt Datei und übertrage es in ein 2D Stringarray und stelle es im XY Graphen dar.

Über einen Event möchte ich gerne jede Änderung einer Zelle direkt im XY Graphen sehen.

Ich hatte mir überlegt den index der Zelle zu ermitteln, welches geändert wird und nur diesen im 2DArray zu ersetzen.

Aber wie geschrieben ist das alles ziemlich langsam,siehe dazu das Bild im Anhang.

Gibt es hierfür eine schnellere Methode?

Wäre für jedem Vorschlag dankbar

Gruß

simcum


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
03.03.2023, 15:59
Beitrag #2

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 413
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: 2d StringArray
Hallo simcum,

die Aussage "relativ groß" ist relativ. Ich hatte mal einen Kunden, der sprach von sehr großen Pumpen. Ich stellt mir dann so eine Pumpe in einer Machinenhalle vor. Im Endeffekt passten die Pumpen in eine Hand. Ein paar Jahre erzählte mir ein anderer Kunde etwas von kleinen Pumpen. Ich war dann schon auf kleine Pumpen konditioniert und stellte mir etwas vor, das so ein paar Milliliter pro Stunde fördert. Ok, diese sehr kleinen Pumpen wogen bei dem Kunden so 10kg.
(frei erfunden)

Außerdem ist mir nicht klar, was du wirklich machen willst. Einen String kann man doch nicht in einem Graph darstellen. Das Bildchen sagt auch nicht viel, aber lässt zumindest vermuten, dass die Daten in einer Tabelle darstellst und der Benutzer in der Tabelle einzelne Werte ändert.

Aber erzähle doch erst einmal etwas zum Thema Dateigröße (Anzahl Spalten, Anzahl Zeilen und die Größe der Datei).

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.03.2023, 16:54
Beitrag #3

simcum Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 113
Registriert seit: May 2015

2016
2010
DE


Deutschland
RE: 2d StringArray
Hallo Martin,

also die Dateigröße ist je nach Messdauer Kanalanzahl unterschiedlich.
Die größte Datei die ich gesehen habe, hatte ca. 700000 Zeilen und 40 Spalten.

Natürlich wandle ich die Strings später in numerische Werte um damit diese im XY-Graph dargestellt werden können.

Die X-Achse besteht aus einem Timestamp array welches mit aufgezeichnet wurde.

Ich möchte nicht mit Tabellen oder Mehrspaltenlistenfelder arbeiten sondern die Werte in einem 2D StringArray abbilden.

Idealerweise sollte es wie folgt ablaufen:

Klick in Arrayelement und es wird der Index von diesem ermittelt und die Änderung von nur diesem Element in das Diagramm übertragen.

Keine Ahnung ob das so möglich ist.

Ansonsten dauert es doch schon ziemlich lange bis die Änderung umgesetzt wird.

Gruß

simcum
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.03.2023, 19:58
Beitrag #4

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 413
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: 2d StringArray
Hallo simcum,

700000 x 40 x 8 ... ok, das kann schon ein bisschen unangenehm werden. Wenn du 700000 Werte sehr viele Plots (wieviele?) in einem XY Graph darstellst, dann ist das auch etwas über dessen Sinnhaftigkeit nachgedacht werden sollte. Ich würde da auch einmal über eine sinnvollere Aufteilung/Darstellung nachdenken.

Wenn der Anwender einen Eintrag in einer Tabelle ändern will, dann muss er irgendwie in diese Zelle zum editieren kommen und er muss eine Taste auf der Tastatur betätigen. Da kannst du jetzt ansetzen und über diesen Umweg die Zellenposition ermitteln. Im Endeffekt sind das aber alles nur Krücken, die mehr oder weniger gut funktionieren.

Wenn du anstatt einer Tabelle eine "Multicolumn Listbox" verwendest, dann kannst du dem Benutzer auch erlauben die Zellen zu editieren. Die Listbox liefert die Position frei Haus. Nachteilig dabei ist, dass die Bedienung unangenehmer ist, wie bei einer Tabelle.

Um bei einer Tabelle zu bleiben. Prinzipiell kannst du auch kleinere Stücke darstellen. Ich kenne zwar die größe deines Bildschirms nicht, aber 700000 Zeilen passen wohl kaum auf deinen Bildschirm. Du musst dann die Scrollbar selber handhaben und nur das in die Tabelle laden, was auch benötigt wird. Ein bisschen eine Krücke ist das zwar auch, aber damit kannst du zumindest schnell herausfinden, welche Zelle geändert wurde.

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.03.2023, 17:36
Beitrag #5

simcum Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 113
Registriert seit: May 2015

2016
2010
DE


Deutschland
RE: 2d StringArray
Hallo Martin,

ich habe jetzt eine schnellere Möglichkeit gefunden den Index der Arrayelemente auszulesen.

Siehe Screenshot im Anhang.

Dazu habe ich drei Events erzeugt.

Maus tritt in den Bereich des 2DStringArrays
Maus verlässt den Bereich des 2DStringArrays
Maustaste gedrückt (Screenshot) Dieser Event wird nur dann ausgeführt wenn der Mauszeiger im 2DStringArray Bereich ist.

Auf diese Art und Weise geht es viel schneller als über die andere Variante, weil ich nicht über Wertänderung einen Event auslöse.

Der nächste Schritt wird sein das geänderte Element über den ermittelten index auszupicken in ein numerisches Element umzuwandeln und über den index im numerische 2D Array für die Diagrammdarstellung zu ersetzen.

Mal schauen wie schnell alles abläuft.

Gruß

simcum


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.03.2023, 22:07
Beitrag #6

simcum Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 113
Registriert seit: May 2015

2016
2010
DE


Deutschland
RE: 2d StringArray
Hallo Martin,

funktioniert wunderbar.
Viel schneller so wie ich es haben wollte.
Die Kurvendarstellung im XY Graph verlangsamt das Ganze natürlich immer noch.
Ich schaue mal was man da tun kann.
Wenn du Ideen hast, bin für alles offen.

Gruß

simcum
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.03.2023, 09:04 (Dieser Beitrag wurde zuletzt bearbeitet: 06.03.2023 12:39 von Martin.Henz.)
Beitrag #7

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 413
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: 2d StringArray
Hallo sicum,

wenn du nur die Mausevents verwendest, dann mag das ok für dich sein und dann ist es erst einmal ok.

du solltest dir nur bewusst sein, dass sich die Tabellenwerte auch ohne Maus verändern lassen und du das gar nicht feststellst.

Bezüglich dem Graphen musst du herausfinden, was da so viel Zeit kostet und dort ansetzen. Eventuell geht deutlich Zeit für die Umwandlung der Strings in Double drauf. Da wäre es u.U. besser mehr mit den Double-Werten zu arbeiten und am besten gleich in dem Format, wie das für den Graphen benötigt wird.

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Eingabefokus auf bestimmte Zeile in Stringarray th13 5 4.908 24.10.2013 15:11
Letzter Beitrag: th13
  2D Stringarray mit Messdaten in Excel speichern 1johleh 7 8.513 03.02.2011 06:44
Letzter Beitrag: 1johleh
  String in Stringarray suchen sebastian1986 2 5.192 04.04.2010 00:06
Letzter Beitrag: sebastian1986
  StringArray in LV schmetterling 6 4.020 06.11.2007 17:00
Letzter Beitrag: Achim

Gehe zu: