Anzeige
Archiv - Navigation
884to888
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
884to888
884to888
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

3D Kurve

3D Kurve
12.07.2007 13:37:00
Dennis
Hallo zusammen,
gibt es irgendeinen Trick mit dem man in Excel eine 3D Kurve erstellen kann, also eine Kurve mit
x, y, z - Koordinaten?
Vielleicht gibts ja ein Add-in?
Weil mit den vorhanden Diagramm Optionen kann ich mir nicht vorstellen wie das gehen soll, das einzige 3Dimensionale ist die Oberfläche und das eignet sich wohl eher weniger für eine Kurve...
Vielleicht hat ja einer ne Idee....
Wäre mal interessant sowas
Gruss Dennis

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 3D Kurve
12.07.2007 13:58:00
Dennis
Hi renee,
nein keine Fläche nur eine Kurve, Linie.
Eine normale Kurve hat ja nur x und y Koordinaten, die 3D Kurve hat eben noch eine z-Koordinate...
Möchte eine Raumkurve erzeugen, um z.B. die Flugbahn eines Flugzeugs anzeigen zu lassen oder ähnliches
Gruss Dennis

AW: 3D Kurve
12.07.2007 14:22:31
Renee
Hello Dennis,
Dann zeichne doch mal eine solche Raumkurve in 2D und stell sie hier rein!
Hast Du den Link angeschaut ?.
Greetz Renee

Anzeige
AW: 3D Kurve
12.07.2007 16:05:23
Dennis
Hier mal ein Bild von einer 3d Spirale
Userbild
Wie gesagt das mit Kegelschnitt 3d vin deinem Link Renee sieht nicht schlecht aus....
Wobei das ja nur ein 2D Diagramm ist und halt die Werte so berechnet werden, dass es eher nur eine optische Täuschung

AW: 3D Kurve
12.07.2007 17:34:00
ingUR
Hallo, Dennis,
ich werde Dich bestimmt keiner Illusion berauben, wenn ich Dir schreibe, dass natürlich Dein Bild auch "nur" 2D-Daten sind, was nders kann ein Blatt Papier oder der Bildschirm nicht darstellen.
Die Aufgabe ist es eben die x-y-z-Daten auf die von der Blickrichtung abhängigen "Mattscheibe" zu projezieren und als X/Y-Diagrramm darzustellen. Das haben die "EXCEL-Götter" für den Doppelkegel gelöst. Die fehlenden x-y-z-Achsen würde man analog darstellen.
Momentan fehlt mir die Zeit, hier die grundlegeden Transformationsformeln vorzustellen; sie sind in den Zellenformeln der "EXCEL-Götter" enthalten . Aber ich bin sicher, entsprechende Ansätze sind im Internet zu finden. Vielelicht schaffe ich es zum Wochenende mich hierzu nochmals zu melden, wenn es zuvor keine Lösung gibt.
Gruß,
Uwe

Anzeige
AW: 3D Kurve
12.07.2007 21:08:56
ingUR
Hallo, Dennis,
so etwa könnte ein Grundversion "3D"-XYZ-Plot der Funktion aussehen:
Gruß,
Uwe

AW: 3D Kurve
13.07.2007 08:26:00
Dennis
hi Uwe,
hast du das Bild auch schon mit Excel erstellt? Sieht nämlich schon ziemlich gut aus....
Aber ist mir schon klar das es immer ein 2D Bild ist und eben durch Projektion usw. 3dimensional wirkt :)
Ich hatte halt gehofft, dass es irgendein Add-in gibt, bei dem ich nur x,y,z Koordinaten angeben will und das 3D selbst berechnet wird. So wie es eben bei anderen Programmen der Fall ist wie z.B. MATLAB, MAPLE usw.
Aber wäre echt nicht schlecht wenn du irgendwann mal die Zeit findest die Formeln hier hinzuschreiben....
Ich habs auch nicht wirklich eilig ne Lösung zu finden, es interessiert mich einfach nur, wie das in Excel realisierbar ist...
Gruss Dennis

Anzeige
AW: 3D Kurve
13.07.2007 09:14:00
ingUR
Ja, Dennis,
das ist ein EXCEL-Diagramm.
Das mit dem Kegelschnitt in Verbindung mit der Darstellung in einem EXCEL-Digramm kommt wahrlich einer "Doktorarbeit" gleich.
Jedoch das Transformieren und Projezieren auf ein xy-Darstelungssystem aus den System YXZ ist relativ einfach allgemein mit EXCEL zu lösen, wenn man die entsprechenden Matrixoparatioen für jeden Punkt ausführt.
Allgemein: {x.y} = TranslationM * RotationM(X) * RotationM(Y) * RotationM(Z) * ProjektionM
Das Diagramm in vorherigen Beitrag berücksichtigte nur die Rotation um die horizontale Hauptachse (math. := x-Achse):
RotationM(X) = {[1.0.0].[0.cos(alpha),-sin(alpha)].[0.sin(alpha).cos(alpha)]}
und damit:
{x.y} = ProjektionsM * RotationM(X) * {X.Y.Z}
mit ProjektionsM = {[1.0.0].[0.1.0].(0.0.1]} als Projektionsmatrix.
Für die allgemeine Erweiterung werde ich, wie schon erwähnt, erst vielleicht am Wochenende Zeit finden.
Gruß,
Uwe

Anzeige
AW: 3D Kurve
14.07.2007 11:57:00
ingUR
Hallo, Dennis,
hier die Gesamtlösung für die Projektion einer 3D-Funktion auf die X/Y-Ebene mit EXCEL-Zellenfunktionen
3D_TransformEXCELFORMEL
Die Berechnung der Funktion erfolgt in den Spalten B:D in Abhängigkeit vom Wert in Spalte A nach Deinem Beispiel. Die Spalte E ist mit dem Wert 1 je Wertezelle zu füllen, um den später zu besprechenden allgemeinen Matrixeinsatz zu ermöglichen (kann entfallen, wenn nicht über Matrixrechnung gegangen wird, wie zum Schluß dargestellt).
Mit den Zellenbereich G3:H5 ist eine Eingabebereich gegeben, der für die Rotationsspaltenwert G3 und G4 auch über die Schieberegler eingestellt werden kann.
Einträge in der Zelle H5 bleiben ohne sichtbare Auswirkungen, da sie das Verschieben des Graphen auf der Z-Achse bewirken, und da die Z-Achse senktecht aus der Darstellungsebene X/Y tritt und auf den Betrachter gerichtet ist, treten bei einer Orthogonalprojektion (der Projektionstrahl trifft senrecht auf die Projektionebene) keine sichtbaren Veränderungen auf.
Das Weltkoordinatensystem mit den Achen x, y und z wird hier als rechstdrehendes System definiert, wobei die x- und y-Achse mit der X- bzw. Y-Achse parallel verlaufen ("EXCEL-System", X nach rechts positiv, Y nach oben positiv). Das bedeutet:
  1. wenn die positive y-Achse in Richtung der positiven z-Achse und gedreht wird, dann weist die Schraubrichtung in der positive x-Richtung (Drehung um die x-Achse)
  2. wenn die positive z-Achse in Richtung der positiven x-Achse gedreht wird, dann weist die Schraubrichtung in der positive y-Richtung (Drehung um die y-Achse)
  3. wenn die positive x-Achse in Richtung der positiven y-Achse gedreht wird, dann weist die Schraubrichtung in die positive z-Richtung (Drehung um die z-Achse)
Ebenso ist das Darstellungssystem X/Y definiert.
Bei Einsetzen von Werten in die Rotationswertzellen ist zu beachten, das hier keine obtischen Merkmale den Tiefeneindruck vermitteln (Schattenbildung, Struktierung von Vor-/Rüclseiten) ersichbar werden lassen, die 3D-Wirkung basiert Einzuig auf der Erwartung des Betrachters, in den Bildpunkten eine Spirale zu sehen.
Über die Eingabe in den Zellen G2:H4, G5 können, die Bemerkung des vorherigen Absatzes beachtend, die verschiedenen Versichebe und Drehwirkungen erkannt werden (Zu H6 siehe oben).
Die Berechnung der Darstellungskoordinaten X/Y geschieht auf einem besonderen Tabellenblatt. Die Rechenfolmeln und Ergebnisse stehen in Spalte F und G dieses Blattes und werden im Diagramm dargestellt.
In den Zellen B2:B4 und E2:E4 werden die Werte aus dem Eingabebereich der Tabelle "3D_Funktion" übernommen. Die benannten Zellen C2:D4 enthalten die Sinus- und Cosinuswerte (Zu dieser und weiteren Namensdefinitionen, sihe entsprechenden Einfügen-Dialog).
Die Matrizen T, RX, RY und RZ werden in den gleichnamig benannten Bereichen A7:D10, A13:D16, A19:D22 und A28:D28 geschrieben. Hier wären Vorzeichen- und Umordnungenumänderungen vorzunehmen, wenn die eingeführten Koordinatensysteme nicht nach den oben beschriebenen Definition aufgebaut sind.
Die Rotationsmatrix R (grün unterlegte Überschrift, mit falscher Bez. RZ statt R im Überschriftstext) wird mit den "geschachtelten" Matrixformel, sie über den Bereich R (A31:D40) als Matrixformel einzugeben ist,
=MMULT(MMULT(MMULT(T;RZ);RY);RX)

, deren Eingabe mit [STRG][[SHIFT][ENTER] abzuschließen ist.
Diese Formel kann ihrerseits als Matrix in eine rMatrixmultiplikation verwendet werden, um sie so mit der Projektionmatrix P zu multiplizieren. Diese Matrix P gestalltest sich hier einfach, kann aber durch besetzen der Zellen p(1,3), p(2,3) mir den negativen Cotangenswerten der schiefen Blickrichtung auf die Projektionsebene erweitert werden.
Soweit das Grundlegende, wiwe ich meine, dass es zur weiteren Bearbeitung der Matrixformeln notwendig ist.
Die ganze Aufgabe vereinfacht sich, wenn nur die Rotation RX und RY für die Darstellung von Interesse ist, denn in diesem Fall können die Summenprodukte direkt mit den trigonometrischen Relationswerrten sin und cos angeschrieben werden (Ausrechnung der Matrixmultiplikationen RZ * RY * RZ) :

X = x*cosAY*cosAZ + y*(-cosAX*sinAZ+sinAX*sinAY*cosAZ) + z*(sinAX*sinAZ+cosAX*sinAY*cosAZ) Y = x*cosAY*cosAZ + y*(cosAX*cosAZ+sinAX*sinAY*sinAZ) + z*(-cosAZ*sinAX+cosAX*sinAY*sinAZ)

Diese Formeln können in die Zellen der Spalten fü X und Y eingesetzt werden (Namensdefinition wie beim der Arbeitsmappe):

 
 HI
1XY
20,00000,0000
Formeln der Tabelle
H2 : ='3D_Funktion'!$B2*cosAY*cosAZ+'3D_Funktion'!$C2*(-cosAX*sinAZ+sinAX*sinAY*cosAZ)+'3D_Funktion'!$D2*(sinAX*sinAZ+cosAX*sinAY*cosAZ)
I2 : ='3D_Funktion'!$B2*cosAY*sinAZ+'3D_Funktion'!$C2*(-cosAX*sinAZ-sinAX*cosAY)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Beide Verfahren können auch in VBA umgesetzt werden, wo auf die "Hilfsbereich" (weitestgehend, möglicherweise vollständig) verzichtet werden kann, wenn man dort auch das Diagramm verwaltet.
Nun hoffe ich, dass mit diesen Hinweisen, Du Dein Vorhaben vorranbringen und ausbauen kannst.
Viel Erfolg!
Uwe
P.S.
Die Formelergebenisse können Fehler enthalten, obwohl ich meine, besondere Sorgfalt bei der Umformung habe walten lassen. Also bitte kritisch die Ansätze und Ergebnissee prüfen, denn diese Arbeit möchte ich mir jetzt nicht mehr zumuten.

Anzeige
AW: 3D Kurve
15.07.2007 11:45:00
Renee
Hi Uwe,
Damit hast Du es verdient, zumindest in den Vorraum der Excel 'Götter'-Halle aufgenommen zu werden.
Ich werde für Dich stimmen.
Greetz Renee ;-)

AW: Danke, Renee, für Deine Unterstützung, ...
15.07.2007 16:13:00
ingUR
... doch da oben würde ich mir wohl da "oben" recht deplaziert vor vorkommen, wenn ich hier "unten" so manche wirklich elegante Lösung lese, aus denen ich noch sehr viel in Sachen EXCEL/VBA lernen will.
Und im übrigen weiß ich nicht so recht, ob Ambrosia und Nektar wirklich zu meinen Lieblingsspeisen und Lieblingsgetränken zählen könnten. ;)
Dennoch, nochmals herzlichen Dank für die anerkennden Worte!
Gruß,
Uwe

Anzeige
AW: @Renee u.a. 3D Kurve Ergänzung
15.07.2007 22:08:33
ingUR
Hallo, Renee,
da Du die erste Version des Arbeitsblattes wohl schon heruntergeladen hast, schreibe ich Dich hier direkt an um Dir mitzuteilen, dass ich nun noch in einer Erweiterung das Achsensysten X/Y/Z im Diagramm als mitgedrehtes Dreibein und die Möglichkeit der Blickrichtungvorgabe eingefügt habe, und daher stelle ich die Frage nochmals auf "offen", da ich nicht sicher bin, ob Du sonst nochmals in die Beitragskette hineinschauen würdest.
3D_TransformEXCELFORMEL.zip
Die Richtigkeit der Blickrichtungstranformation muß ich allerdings noch kritisch prüfen, jedoch das Prinzip sollte klar sein.
Gruß,
Uwe
eineund prechen

Anzeige
AW: @Renee u.a. 3D Kurve Ergänzung
16.07.2007 08:46:00
Dennis
Hi Uwe,
wow, ist ja echt super geworden....
Vielen Dank, muss mir das in Ruhe mal anschauen wie du das genau gemacht hast.
Auch danke für deine erklärenden Worte sind sehr hilfreich.
Meine größten Respekt und vielen Dank, dass du Dir die Mühe gemacht hast Dich damit zu beschäftigen.
Was man alles mit Excel machen kann, wenn man sich gut auskennt, ist schon faszinierend
Gruss Dennis

AW: @Renee u.a. 3D Kurve Ergänzung
16.07.2007 13:17:00
Renee
Hello Uwe,
Userbild
Thxs Renee

AW: 3D Kurve
13.07.2007 08:34:00
Dennis
Hi....
ich hab grad mal auf der Seite nachgelesen und auf ein paar Informationen gehofft.
Da steht das die Kegelschnitt-Darstellung eine Doktorarbeit ist, na dann kann man schonmal von ausgehen, das es extem aufwändig sein wird so was zu erstellen...
Gruss Dennis

Anzeige
AW: 3D Kurve
12.07.2007 15:51:20
Dennis
Also das Beispiel 3d bei dem die Parabel des 3d Kegels angezeigt wird sieht ziemlich gut aus......
Das ist wirklich mit excel gemacht der ganze Kegel? Sieht ziemlich gut..... nur leider blickt man da nicht so ganz durch wenn man sich die Datenquelle im Diagramm anschaut, da keine Beschriftet sind
Muss ich mir mal genauer anschaun, aber scheint ja wirklich irgendwie zu gehen
Gruss Dennis

AW: 3D Kurve
12.07.2007 16:00:18
Renee
Hello Dennis,
Das ist wirklich mit excel gemacht
JA und zwar nur mit Excel-Bordmitteln OHNE VBA
Natürlich geht das ein bisschen über den Level Excel gut und Bedarf einiger zusätzlicht mathematischer Kentnisse.
;-) Renee ;-)

Anzeige
AW: 3D Kurve
12.07.2007 16:07:31
Dennis
:)
ohne VBA ist echt krass, die jenigen die das erstellt haben sind aber echt Excel Götter...
Mathematisch auch nicht wirklich einfach, da das ganze ja nur als 2D Daten vorliegen, das müsst ich mir erstmal aneignen wie das dann berechnet wird.
Aber sehr interessant

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige