Leere Streifen im generierter Pixelgrafik

Fragen zu Tkinter.
Antworten
Benutzeravatar
gkuhl
User
Beiträge: 600
Registriert: Dienstag 25. November 2008, 18:03
Wohnort: Hong Kong

Alternativ könntest du auch Matplotlib oder MayaVi (Beispiel) verwenden. Mit Matplotlib lässt sich das Beispiel wie folgt realisieren:

Code: Alles auswählen

import numpy as np
import pylab as plt

def julia():
    # Calculate the Julia set on a grid
    x, y = np.mgrid[-1.5:0.5:500j, -1:1:500j]
    z = x + 1j*y

    julia = np.zeros(z.shape)

    for i in range(50):
        z = z**2 -0.70176 -0.3842j
        julia += 1/float(2+i)*(z*np.conj(z) > 4)
    
    return x,y,julia

if __name__ == '__main__':
    x,y,z = julia()
    plt.contourf(x,y,z)
    plt.show()
Grüße
Gerrit
muhazz
User
Beiträge: 37
Registriert: Donnerstag 1. April 2010, 11:58

Hmm, ich muss meine Aussage von vorhin korrigieren - ich sollte das Problem besser jetzt lösen.

@gkuhl:
Enthält der Quelltext, den du angeführt hast, schon eine Darstellung der Julia-Menge mit entsprechenden Abstufungen der Farben?
Wenn ich ihn ausführe, erhalte ich eine Fehlermeldung, dass es kein Modul "numpy" gibt.

In Matplotlib und MayaVi müsste ich mich erst einarbeiten, ich habe bisher absolut keine Ahnung.
Ist der Umgang damit leicht zu erlernen und bieten die beiden Möglichkeiten, die es lohnenswert für mich machen?

Ich möchte ausgefüllte Julia-Mengen mit farbigen Abstufungen darstellen, außerdem Ränder von Julia-Mengen und Bahnen einzelner Iterationen, evtl. auch über das Bild einer Julia-Menge gelegt.
Wie ich nur den Rand einer Julia-Menge darstellen soll, weiß ich übrigens noch nicht.
Also, eignet sich Matplotlib oder MayaVi besonders dafür?
Benutzeravatar
gkuhl
User
Beiträge: 600
Registriert: Dienstag 25. November 2008, 18:03
Wohnort: Hong Kong

NumPy ist nicht Teil der Standardbibliothek. Mein Beispiel hat auch Farbabstufungen (colormaps), auch wenn sie in dem Fall vielleicht nicht unbedingt die schönsten sind. Zur 2d Darstellung ist die Matplot Library ein Quasi-Standard, die dir sicherlich einiges an Arbeit abnehmen kann. Schau am besten Mal in die Galerie auf der Matplotlib-Seite. Für 3d wird häufig MayaVi verwendet.

Wenn du mit Python mathematische oder naturwissenschaftliche Probleme lösen willst, ist es auf jeden Fall sinnvoll sich SciPy und NumPy anzuschauen.
muhazz
User
Beiträge: 37
Registriert: Donnerstag 1. April 2010, 11:58

Langsam passt der Titel wirklich nicht mehr zur Diskussion. Ich würde vorschlagen, hier gehts weiter:
http://www.python-forum.de/post-166404.html#166404
Antworten