hmm, sch...
da ich bei den anderen keine Plan habe wie das geht ist das jetzt doof
dann muss ich mich weiter auf die Suche machen, und hoffen das ich was finde.
das auskommentieren habe ich schon versucht jedoch kommt dann ein anderer Fehler.
ich dachte das cih das benötige, doch das ist ein Zoom? wenn ich das richtig mittlerweile verstanden habe.
das ist der Aktuelle Code:
Code:
## Befehl surf um ein 3D Gebilde darzustellen
## Autor: AndyAndyAndy
## Dateum: 23.12.2014
## Forum: http://www.gomatlab.de/viewtopic,p,143529.html
## Datei surf_csv.m
error: invalid use of script /Users/muecke/Desktop/Versuche/surf.m in index expression
error: called from:
error: /Users/muecke/Desktop/Versuche/surf_csv.m at line 18, column 1
>>
_________________
--
Anfänger, habe noch nie mit so was gearbeitet.
bitte um Verständnis.
error: invalid use of script /Users/muecke/Desktop/Versuche/surf.m in index expression
error: called from:
error: /Users/muecke/Desktop/Versuche/surf_csv.m at line 22, column 1
>>
woran kann das Ligen? die Fehlermeldung kommt immer beim Befehl. "surf" habe es auch mit einem ; am ende versucht. selbe Ergebnis
EDIT ich habe eine meiner Übungsdateien umbenannt denn ich hatte eine Datei mit dem Namen surf.m im selben Verzeichnis, die habe ich jette in T_surf.m umbenannt und dort habe ich den Code nun rein gepackt, jetzt kommt keine Fehlermeldung mehr
doch das Fenster in dem Das Bild erscheinen Sollte, bleibt wies und Hängt sich auf
_________________
--
Anfänger, habe noch nie mit so was gearbeitet.
bitte um Verständnis.
data = dlmread("CSV/replay.csv", ",", 14, 60, "emptyvalue", NA); # CSV Daten laden
# ab zeile 14
# immer erst ab Spalte 60 Rach Rechts einlesen
# emptyvalue = keine ahnung
# NA = keine ahnung
snippet = data(1300:2800, 150:470); # von den gelesenen Daten nur den bereich
# zwischen zeile: Spalte bis zeile:Spalte
# in ein Array schreiben
## scale snippet to 0..1
tmp = snippet - min(snippet(:)); # keinen plan (etwas Rechnen)
tmp = tmp / max(tmp(:)); # keinen plan (etwas Rechnen)
# tmp = imresize (tmp, 0.5); # Die Daten sollten um den Faktor 0,5 gezoomt werden
surf(tmp) # Ausgabe des Array`s im 3D Raum
colormapgray # Farbe einstellen "Grau"
shading interp; # keinen plan
zlim([-33]) # keinen plan
20min ist recht lange. Bei mir geht das nur ein paar Sekunden um die CSV Datei einzulesen und den Ausschnitt anzuzeigen. Hast du einen laten Rechner, wenig RAM? Kannst ja mal schauen, ob das System am swappen ist wil der RAM ausgeht.
"emptyvalue", NA: an den Stellem im CSV, wo kein Wert ist (,,) Na (not available) einsetzen.
Code:
tmp = snippet - min(snippet(:)); # keinen plan (etwas Rechnen)
tmp = tmp / max(tmp(:)); # keinen plan (etwas Rechnen)
Zuerst das Minimum Abziehen, dann durch das Maximum Teilen um das Profil in den Bereich 0..1 zu skalieren. Die Achsenbeschriftung für Z stimmt dan zwar nicht mehr aber ich wollte das erstmal anzeigen.
in Octave kannst du z.B. "help surf" eingeben um die Hilfe zum Befehl zu bekommen. Außerdem kannst du dir die Matlab Hilfe durchlesen
Kannst ja mal schauen, ob das System am swappen ist wil der RAM ausgeht.
wie mache ich das?
"emptyvalue", NA: an den Stellem im CSV, wo kein Wert ist (,,) Na (not available) einsetzen.
das erklärt einiges.
Die Achsenbeschriftung für Z stimmt dan zwar nicht mehr aber ich wollte das erstmal anzeigen.
das ist für mich auch erst mal nicht ganz so wichtig, das das alles zu 10% richtig angezeigt wird, für mich ist es wichtig das ich verstehe wie das ganze geschid, und was passiert wenn ich was ändere, damit ich damit auch arbeiten kann, denn wenn ich es nicht verstehe kann ich auch nicht damit arbeiten.
SO wie es jetzt ist kann ich das Gebilde nicht Drehen oder hinein Zoomen da das immer für jede Veränderung 20 - 30 min dauert, ...
für mich zum Verständnis, erweise surf was die X, Y, Z werte sind?
irgend wie muss man das doch definieren?
das ist für mich noch ein Ministerium
woher wies das teil welche Zahlen miteinander zusammen gehören?
_________________
--
Anfänger, habe noch nie mit so was gearbeitet.
bitte um Verständnis.
mit meiner Test Datei hat es schon besser geklappt:
test.csv (im Anhang)
test_csv.xls (im Anhang) habe ich verwendet um mir die einzelnen zielen zu generieren.
das ist der Code für die Test csv:
Code:
# Autor: Mücke
# Datum: 24.12.2014
# Aufgabe: CSV Daten laden und plotten 3D
## wenn ich eine der zeilen Aktiv habe dann braucht das Diagram sehr lange.
## das Diagramm hackt auch wenn man es mit der Maus bewegen möchte.
## wenn ich colormap weg lasse ist der efekt der selbe
## Hier wird das Diagramm sehr schnell geladen und ich kann es auch gut
## mit der maus bewegen. bekomme aber eine fehlermeldung das das Agunemt nihct gefunden wurde.
das Diagramm kommt schnell und ich kann es super schnell drehen,
jedoch nur wenn ich ein Falsches Parameter beim Befehl "colormap" verwende, sonnst dauert es länger bis es geladen ist, und mir fehlt am Oberen teil etwas vom Diagramm, Drehen ist dann auch nicht mehr möglich.
dafür bekomme ich mit Falschen Parameter hinten eine Wand eingezogen, keinen Plan wo die herkommt, bzw. ich raffe es nicht woher mein Prag wies wie die Koordinaten zusammen gehören.
Das Bild der Test CSV ist im Anhang ein mal mit Falschen und ein mal mit Richtigen Parameter
EDIT: ich arbeite mit "replay.csv"
wenn ich den Befehl: "shading interp;" raus schmeiße dann bekomme ich wider ein vernünftiges Bild angezeigt, dazu habe ich dann den den Befehl "colormap default" eingefügt. es dauert zwar immer noch länger dafür wird das Bild als Bild dargestellt, man erkennt zwar nichts weil es kunterbunt ist.
und Drehen lässt sich es auch nicht aber es kommt ein Bild.
ich wies jetzt auch warum mir der Obere teil beim Test.csv gefehlt hat
weil die Anzeige nicht stimmt (-3 3) habe das angepasst und siehe an da passt es auch wider mit der anzeige.
es ist immer noch sehr langsam, und ich verstehe nicht woher der Code wies wie die Koordinaten zusammen gehören
Archiv.zip
Beschreibung:
test.csv mit der ich die test Bilder erstellt habe.
und die Excel Datei, mit der ich die einzelnen zielen mir vorab erstellt habe. und dann die csv zu erstellen
ich habe da mal eine Frage. zu Matlab R2014a auf einem WIN Rechner.
ich kann bei einem Bekannten in der Firma das Matlab benutzen,
jedoch ist der gerade im Urlaub und ich kann Ihn nicht fragen wie
das alles geht.
habe versucht Matlab bei Ihm zu verwenden, doch irgend wie ist verstehe ich das nicht.
ich habe meine "replay.csv" dort geladen dann ist ein Extra Fenster aufgegangen in dem ich alle Daten als eine Tabelle gesehen habe, dort konnte ich dann auch einen Bereich markieren, warum ich daraus dann eine Script erstellen kann habe ich noch nicht verstanden.
Meine Frage ist eigentlich dahingehend kann ich in dem Fenster auch angeben was meine X, Y und Z Achse ist, und mir die Daten als Bild anzeigen lassen? bzw. einen Script generieren lassen damit ich das Bild anzeigen lassen kann?
das Import Tool ist ausschließlich für den Variablenimport. Die Option "Generate Script / Function" ermöglicht es, daraus Code zu generieren, um das in automatisierte Workflows einzubinden.
Zur Visualisierung kannst du im Workspace Browser eine oder mehrere (mit Strg + Klick) Variablen markieren, und dann per Rechtsklick die Visualisierungsoptionen anschauen.
Fragen zu MATLAB bitte in Zukunft in einen eigenen Thread. Ich zumindest schaue normal nicht in Threads im Octave-Forum, da ich selber nur mit MATLAB arbeite.
das Import Tool ist ausschließlich für den Variablenimport. Die Option "Generate Script / Function" ermöglicht es, daraus Code zu generieren, um das in automatisierte Workflows einzubinden.
Zur Visualisierung kannst du im Workspace Browser eine oder mehrere (mit Strg + Klick) Variablen markieren, und dann per Rechtsklick die Visualisierungsoptionen anschauen.
Fragen zu MATLAB bitte in Zukunft in einen eigenen Thread. Ich zumindest schaue normal nicht in Threads im Octave-Forum, da ich selber nur mit MATLAB arbeite.
Grüße,
Harald
Danke für die Antwort, ja du hast recht da habe ich nicht dran gedacht habe ein Neues Thema unter Matlab aufgemacht, hoffe das ich da richtig bin:
Lichtschnitt bild CSV darstellen
Auch wenn ich jetzt wies das ich das Fenster in dem ich mich befunden habe nicht dafür verwenden kann habe ich noch nicht mehr aus deiner Antwort raus holen können ,
ich weis nicht wo ich mit STRG + (Mausklick) was machen kann
vielleicht könntest du da noch etwas genauer drauf eingehen, im anderen Thema.
_________________
--
Anfänger, habe noch nie mit so was gearbeitet.
bitte um Verständnis.
Andreas2000
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 08.05.2022, 19:39
Titel:
Guten Tag,
ich habe ein ähnliches Problem, und habe den Code vom AndyAndyAndy gesehen, und wollte diesen ausprobieren.
Wenn ich die Zeilen Kopiere und im Befehlsfenster eingebe, bekomme ich ein Bild angezeigt.
Wenn diese in einer Datei *.m stehen und ich auf ausführen klicke bekomme ich kein Bild .
Was muss ich da denn ändern das es dann auch Funktioniert?
Also so wie ich die CSV Datei lese, sind das einfach Höhenwerte in mm? Passt eine durchschnittliche Profiltiefe von 4.9mm (aus deinen Daten gelesen)? Anbei noch ein Ausschnitt
Andreas2000
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 08.05.2022, 20:24
Titel:
ha ha, die Daten von Mücke82 sind ja einfach gigantisch groß. das dauert nur extrem lange bis die geladen ist.
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.