Plots kombinieren/Effizienz < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Ich bin im Internet (Adresse weiß ich leider nicht mehr) auf eine Seite gestoßen, wo die Primzahlen auf einer archimedischen Spirale angeordnet werden, und dann entsprechend ihrer Teiler durch eine kleinere/größere Kugel repräsentiert werden.
Nun wollte ich zunächst alle Kugeln in getrennte Plots ablegen und anschließend mit Show vereinigen.
Nun zum Problem: Mathematica rastert bei Plot3D den Definitionsbereich. Bei der Kreisformel [mm] \wurzel{r^{2}-x^{2}-y^{2}}=z [/mm] gibt es aber sehr viele nicht definierte Stellen, sodass mathematica nichts zum Plotten findet (die Rasterung trifft auf keinen definierten Bereich), was dazu führt, dass einige Kugeln nicht dargestellt werden.
Nun wollte ich das damit ausgleichen, dass ich den Definitionsbereich der einzelnen Plots verringer, aber dann hat Show nicht mehr das gewünschte Ergebnis geliefert. was kann ich tun?
Vielen Dank im Vorraus.
Mfg sunny
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 09:23 Do 27.03.2008 | Autor: | Peter_Pein |
Das sind dann ja nur 1 und die Zahl selbst!?!
Archimedische Spiralen sind einfach:
1: | << Graphics'
| 2: | archimedischeSpirale[a_, n_] := a*t^(1/n){Cos[t], Sin[t]}
| 3: | (* Beispiel: *)
| 4: | DisplayTogether[
| 5: | ParametricPlot[archimedischeSpirale[1, #] // Evaluate, {t, 0, 5Pi},
| 6: | PlotStyle -> Hue[2 - #], AspectRatio -> Automatic,
| 7: | PlotPoints -> 123] & /@ (1 + Range[5]/5)] |
und für die Kugeln würde ich mir eine Liste von Sphere[]s (zu finden in Graphics'Shapes') basteln, die dann mit Show[Graphics3D[Kugelliste]] angezeigt werden kann.
Viel Erfolg,
Peter
|
|
|
|
|
Hi Sunny,
ich habe einfach mal drauflos getippselt und die ganzen Zahlen bis 100 auf eine Spirale gelegt. Im folgenden Bild ist der Radius einer Kugel [mm] $\wurzel{\sigma_{0}(n)^{-1}}$, [/mm] wobei [mm] $\sigma_{0}$ [/mm] die Anzahl der Teiler liefert:
[Dateianhang nicht öffentlich].
Falls es das ist, was dir vorschwebte, das Notebook (Mma 5.2) hängt dran.
Alles Gute,
Peter
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich] Anhang Nr. 2 (Typ: nb) [nicht öffentlich]
|
|
|
|
|
Also danke für deine Bemühungen.
Ich bin aber nun bevor ich deine Antwort gelesen hab dann doch noch auf die Lösung gekommen: Den Befehl Show[] um das Attribut PlotRange erweitern! Damit kann man dann den zu plottenden Bereich nochmal auswählen.
Mein Problem lag darin, dass nur der Bereich des ersten Plots in der Liste angenommen wurde (oder so ähnlich)
Und zur Visualisierung:
[Dateianhang nicht öffentlich]
Dateianhänge: Anhang Nr. 1 (Typ: jpg) [nicht öffentlich]
|
|
|
|