Ein gutes Bild sagt mehr als tausend Worte

Größe: px
Ab Seite anzeigen:

Download "Ein gutes Bild sagt mehr als tausend Worte"

Transkript

1 Ein gutes Bild sagt mehr als tausend Worte Datenverarbeitung und Visualisierung mit Python Jan Köhler Lars Berger Christian Drews April / 93

2 Übersicht Warum Python? Erste Schritte in Python numpy/scipy matplotlib 2 / 93

3 Warum Python? Python ist... einfach, schnell, frei verfügbar (open source), besitzt eine Vielzahl von Erweiterungen (Modulen), sowohl zur Verarbeitung und Darstellung von Daten geeignet, aber auch als Programmiersprache für komplexe Softwareprojekte. Youtube Google EVE Online... 3 / 93

4 Was uns erwartet... >>> import pylab >>> DatenX, DatenY = lade_daten("./daten/wetter.dat") >>> Ax = pylab.figure().gca() >>> Ax.plot(DatenX, DatenY, lw = 2, label = "Wetter") >>> Ax.set_ylabel("Temperatur") >>> (...) 4 / 93

5 Woher bekomme ich Python? Windows: Offizielle Webseite Dokumentation und Tutorials... Nur die Basispakete! Python(x,y) - Alle wichtigen Zusatzmodule Gängige Editoren und Entwicklungsumgebungen Alles was man braucht! Linux: Normalerweise vorinstalliert Mac: Normalerweise vorinstalliert 5 / 93

6 Die Spyder Konsole... bereitet alles zum interaktiven Arbeiten vor: 6 / 93

7 Erste Schritte Einfaches Anwendungsbeispiel: >>> t = arange(100) >>> f = 0.02 >>> plot(sin(2*pi*f*t)) >>> sqrt(9) 3 >>> log(100) + (4+3)* >>> a = >>> b = sqrt(0.04) >>> a * sqrt(a - b**3) + sin(a**2 +b)... Bye bye Windows Taschenrechner! 7 / 93

8 Spyder Interactive Development Environment Spyder is a powerful interactive development environment for the Python language with advanced editing, interactive testing, debugging and introspection features 8 / 93

9 Erste Schritte in Python I Grundlegende Befehle: print Hallo Welt x = 2 #Setze x = 2 print "x = ", x #Ausgabe: x = 2 print "x + 2 = ", x+2 #Ausgabe: x + 2 = 4 print "x * 2 = ", x*2 #Ausgabe: x * 2 = 4 print "x^2 = ", x**2 #Ausgabe: x^2 = 4 print - Ausgabe von Daten # - Kommentare x =... - Variablen können direkt zugewiesen werden Ausprobieren! 9 / 93

10 Erste Schritte in Python II Variablenzuweisung in Python: i = 2 f = 2.0 s = Dies ist ein String s = i Das Gleiche in C++: #Integer #Float #String #s ist jetzt ein Integer int i = 2; //Integer float f = 2.0; //Float char[] s = "Dies ist ein String"; //String Vorsicht: (Implizite Typisierung) a = 1.0 print a/2 # -> 0.5 b = 1 print b/2 # -> 0!!! print b/2.0 # -> / 93

11 Erste Schritte in Python II Weitere Datentypen: Listen (list) a = [ Hund, Katze, 100, 2.0] print a # -> [ Hund, Katze, 100, 2.0] print a[1] # -> Katze print a[0:2] # -> [ Hund, Katze ] print a[2:] # -> [100, 2.0] print a[2:]*2 # -> [100, 2.0, 100, 2.0] print len(a) # -> 4 a[1] = Hund2 # -> Ersetzt Katze print a # -> [ Hund, Hund2, 100, 2.0] a[0] = [1, 2] # Verschachtelte Listen print a # -> [[1, 2], Hund2, 100, 2.0] a.sort() # a wird sortiert (Methode!) print a # -> [2.0, 100, [1, 2], Hund2 ] Funktioniert für beliebige Datentypen slices (a[:3]) sind ein nützliches Werkzeug Listen sind Objekte mit Methoden (sort) 11 / 93

12 Erste Schritte in Python II Aufgaben: Benutze die Hilfe um mehr über Listen (list) zu erfahren Erstelle eine beliebige Liste a=[...] Welche Methoden haben Listen? Wozu dient append und reverse? Kehre die Reihenfolge der Elemente der Liste um. Erstelle eine neue Liste, die nur die ersten beiden Elemente enthält. a = [ Hund, Katze, 100, 2.0] a.reverse() print a b = a[0:2] 12 / 93

13 Erste Schritte in Python III if und else: y = 5 # if y < 0: # Wenn < 0 print "negativ" # elif y == 0: # Wenn voriges if wahr, teste ob y = 0 print "Null" # else: # Wenn keine Bedingung wahr, dann: print "positiv" # if y > 10 and y < 20: print "y liegt zwischen 10 und 20" if y < 10 or y > 20: print "y liegt nicht zwischen 10 und 20" Python benutzt Einrückung! (Vorsicht) Für Vergleiche wird == benutzt! x=2 ist eine Zuweisung, x==2 ein Vergleich. Bedingungen lassen sich beliebig mit and und or verknüpfen 13 / 93

14 Erste Schritte in Python III Beispiel: y = 2 if y % 6. == 0: print "y ist durch 6 teilbar" Aufgabe: Benutze eine if- Abfrage um y=0 zu setzen, falls y negativ ist. y = -1 print y =, y # -> y = -1 if y < 0: # teste ob y negativ ist y = 0 # setze y = 0 print y =, y # -> y = 0 14 / 93

15 Erste Schritte in Python IV Schleifen: for i in [ Hund, Katze, 100, 2.0]: # Fuer jedes Element in []: print "i = ",i # -> i = Hund... print range(10) # -> [0, 1, 2,... 8, 9] for i in range(10): print "i = ", i Aufgabe: Schreibe eine for-schleife mit range(10), aber gib nur die i aus, die > 5 sind. for i in range(10): if i > 5: print i 15 / 93

16 Erste Schritte in Python IV Aufgabe: Erstelle eine Liste, die die Quadrate aller Zahlen von 0 bis 99 enthält. D.h.: [0, 1, 4, 9, 16, 25,...] Hinweis: Benutze eine for-schleife Hinweis: Beginne mit einer leeren Liste und erweitere mit.append() quadrate = [] for i in range(100): print i, i*i quadrate.append(i*i) print quadrate 16 / 93

17 Grundlegende Konzepte I Datei Ein/Ausgabe: read f = open("data/bsp1.txt", r ) for line in f: print line f.close() Ausprobieren! Jede line wird als Text eingelesen. Wie kommen wir an die Zahlenwerte? s = "10 15" l = s.split() #-> l = ["10", 15"] x = float(l[0]) #-> y = 10.0 y = float(l[1]) #-> x = / 93

18 Grundlegende Konzepte I Aufgabe: Lese bsp1.txt ein und speichere die Zahlen der beiden Spalten in den Listen X, Y. Wende.split() auf line an. Wandel die Strings in float um. Benutze.append() um die Werte an X,Y anzuhängen. X = [] Y = [] f = open("bsp1.txt", r ) for line in f: l = line.split() X.append(float(l[0])) Y.append(float(l[1])) f.close() Plot Beispiel: from pylab import * und plot(x,y) 18 / 93

19 Grundlegende Konzepte I Datei Ein-/Ausgabe: write f = open("ausgabe.txt", w ) f.write("hallo Datei! \n") f.close() open(filename, r ) - Datei zum Lesen öffnen open(filename, w ) - Datei zum Schreiben öffnen open(filename, a ) - Daten werden an bestehende Datei angehängt Aufgabe: Schreibe die Zahlen in eine Datei. f = open("ausgabe.txt", w ) for i in range(101): f.write(str(i)+"\n") f.close() 19 / 93

20 Grundlegende Konzepte II Funktionen: def quadrat(x): return x*x print quadrat(2) #-> 4 Default Argumente def f(x, a=1, b=0): y = a*x + b return y print f(1, 2, 0) #-> 2 print f(1) #-> 1 # definiere quadrat(x) # x*x wird zurueck gegeben # definiere Funktion f() # y wird zurueck gegeben Funktionen beginnen mit dem Keyword def Es können beliebige Argumente (Zahl, String, Liste) übergeben werden Auf Einrückung achten! 20 / 93

21 Grundlegende Konzepte II Variablen innerhalb und außerhalb der Funktion def f(x): print "In f: Erhoehe x um 2" x = x + 2 print "In f: x = ", x return "fertig" x = 1 print "Vor Aufruf von f: x =", x s = f(x) print "Nach Aufruf von f: x = ", x Ausgabe: -> Vor Aufruf von f: x = 1 -> In f: Erhoehe x um 2 -> In von f: x = 3 -> Nach Aufruf von f: x = 1 21 / 93

22 Grundlegende Konzepte III Aufgabe: Schreibe eine Funktion, die in einer Liste alle Einträge < -990 in 0 ändert. [2.2, 3, 4.2, -999, 5] [2.2, 3, 4.2, 0, 5] Benutze eine for-schleife, um auf die einzelnen Elemente zuzugreifen Z.B.: for i in range( len(liste) ): Benutze liste[i], um an die einzelnen Einträge der Liste zu gelangen def clean_data(liste): for i in range(len(liste)): if liste[i] < -990: liste[i] = 0 22 / 93

23 Grundlegende Konzepte III Aufgabe: (simple Interpolation) Schreibe eine Funktion, die in einer Liste alle Einträge < -990 in den vorigen Eintrag ändert. [2.2, 3, 4.2, -999, 5] [2.2, 3, 4.2, 4.2, 5] range(5) erzeugt die Liste [0, 1, 2, 3, 4] range(1, 5) erzeugt die Liste [1, 2, 3, 4] def fix_data(liste): for i in range(1, len(liste)): if liste[i] < -990: liste[i] = liste[i-1] Eine nützliche Funktion um einfache Datenlücken zu beheben. 23 / 93

24 Grundlegende Konzepte IV Nützliche Funktionen, die häufiger gebraucht werden, lassen sich in separate Module auslagern. Module Lege mit Spyder die Datei tools.py an Kopiere interpolate data nach tools.py Andere Dateien können nun tools importieren import tools liste = [2.2, 3, 4.2, -999, 5] tools.fix_data(liste) #importiere das Modul tools #benutze fix_data aus tools from tools import fix_data fix_data(liste) from tools import * #importiere fix_data aus tools #importiere alle Funktionen aus tools Damit man auf ein Modul zugreifen kann, muss es sich im gleichen Verzeichnis wie die ausgeführte Datei befinden, oder sich in einem Unterverzeichnis befinden, oder sich im PYTHONPATH befinden 24 / 93

25 Grundlegende Konzepte IV Es gibt zahllose vordefinierte Module: os/sys - Bieten Methoden um auf das Betriebssystem zuzugreifen (kopieren etc.) math - Enthält gängige mathematische Funktionen datetime - Enthält Methoden um Zeit und Datumsangaben zu bearbeiten gzip - Bietet direkten Zugriff auf gezippte Dateien pyqt - Grafische Benutzeroberflächen (Qt) numpy/scipy - Paket zum wissenschaftlichen Programmieren in Python matplotlib - Bibliothek zum Erstellen publikationsreifer Grafiken / 93

26 Abschlussaufgabe: Einlesen und Darstellen von Daten Aufgabe: Häufig sind Datensätze komplexer aufgebaut: Die Datei kuesten linien.dat enthält die Küstenlinien von Kontinenten und Inseln. Die einzelnen Küstenlinien sind durch ein > getrennt > Lese den Datensatz ein und plotte die einzelnen Küstenlinien. Benutze die Befehle from pyplot import * und plot(x, Y) Beginne mit X=[], Y=[] Teste in jeder Zeile ob ein > vorkommt. Wenn ja: Plotte alle bisher eingelesenen Daten und setze X=[], Y=[] Wenn nicht: Benutze.append() um die Werte an X,Y anzuhängen. 26 / 93

27 Numpy Numpy... ist eine Erweiterung (ein Modul) für Python ist genau wie Python frei verfügbar ist schnell liefert eine Vielzahl hilfreicher Funktionen enthält numpy arrays! Numpy erleichtert den Umgang mit Daten! 27 / 93

28 Rückblick: Erste Schritte Erinnerung : Einfaches Anwendungsbeispiel: >>> t = arange(100) # arange ist eine Numpy Funktion >>> f = 0.02 >>> plot(sin(2*pi*f*t)) # sin ist eine Numpy Funktion # pi kommt aus Numpy >>> sqrt(9) # sqrt -> Numpy 3 >>> log(100) + (4+3)*2 # log -> Numpy >>> a = >>> b = sqrt(0.04) >>> a * sqrt(a - b**3) + sin(a**2 +b) / 93

29 Arrays I Arrays sehen wie Listen aus >>> l=range(10) >>> l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # Liste >>> a=arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) # Array >>> l[:3] # Indizierung/Slicing [0, 1, 2] >>> a[:3] # Funktioniert auch bei Arrays array([0, 1, 2]) 29 / 93

30 Arrays I Arrays sehen wie Listen aus... sind aber anders >>> l+1 # Mit Listen kann man Traceback (most recent call last): # nicht rechnen File "<stdin>", line 1, in <module> TypeError: can only concatenate list (not "int") to list >>> l**2 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError:... >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> a+1 # Mit Arrays geht es array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) >>> a**2 array([ 0, 1, 4, 9, 16, 25, 36, 49, 64, 81]) 30 / 93

31 Rückblick: Erste Schritte in Python IV Erinnerung: Aufgabe: Erstelle eine Liste, die die Quadrate aller Zahlen von 0 bis 99 enthält. D.h.: [0, 1, 4, 9, 16, 25,...] Hinweis: Benutze eine for-schleife Hinweis: Beginne mit einer leeren Liste und erweitere mit.append() quadrate = [] for i in range(100): print i, i*i quadrate.append(i*i) print quadrate 31 / 93

32 Arrays I Aufgabe: Erstelle ein Array, das die Quadrate aller Zahlen von 0 bis 99 enthält. D.h.: [0, 1, 4, 9, 16, 25,...] Hinweis: Benutze arange Hinweis: Rechne mit dem Array quadrate=arange(100) quadrate=quadrate**2 print quadrate # Geht auch in einer Zeile # quadrate=arange(100)**2 32 / 93

33 Arrays II Arrays sehen wie Listen aus... >>> l=range(10) >>> l[0]=5 # Man kann Eintraege aendern >>> l[1]=l[2]+l[3] # und mit ihnen rechnen >>> l [5, 5, 2, 3, 4, 5, 6, 7, 8, 9] >>> a=arange(10) # Das geht auch mit Arrays >>> a[0]=5 >>> a[1]=a[2]+a[3] >>> a array([5, 5, 2, 3, 4, 5, 6, 7, 8, 9]) 33 / 93

34 Arrays II Arrays sehen wie Listen aus... sind aber anders >>> l=range(10) >>> l.append(20) # Listen kann man erweitern >>> l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 20] >>> a=arange(10) >>> a.append(10) # Arrays nicht Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: numpy.ndarray object has no attribute append Vorsicht: Arrays sind keine Listen >>> b=append(a,20) # Erweiterung eines Arrays >>> b # nur durch eine Neuzuweisung array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 20]) 34 / 93

35 Arrays II Aufgaben: Benutze die Hilfe, um mehr über Arrays zu erfahren Vergleiche die Methoden und Attribute von Listen und Arrays Wozu dienen mean und was ist dtype bei Arrays? Berechne den Mittelwert der ganzen Zahlen von 6 bis 33 mit einer Liste mit einem Array # mit Liste summe=0. anzahl=0. for i in range(6,34): summe=summe+i anzahl=anzahl+1 mittelwert_liste=summe/anzahl # mit Array mittelwert_array=arange(6,34).mean() 35 / 93

36 Rückblick: Erste Schritte in Python II Erinnerung: Variablenzuweisung in Python: i = 2 f = 2.0 s = Dies ist ein String s = i Vorsicht: (Implizite Typisierung) a = 1.0 print a/2 # -> 0.5 b = 1 print b/2 # -> 0!!! print b/2.0 # -> 0.5 #Integer #Float #String #s ist jetzt ein Integer 36 / 93

37 Arrays III Typen >>> a=arange(10) # Typisierung implizit 10 -> int >>> a/2 array([0, 0, 1, 1, 2, 2, 3, 3, 4, 4]) >>> a=arange(10.) # 10. -> float >>> a/2 array([0., 0.5, 1., 1.5, 2., 2.5, 3., 3.5, 4., 4.5]) Vorsicht: Arrays haben einen festen Typ >>> a=arange(10) # a -> Typ : int >>> a[5]=10.5 >>> a array([ 0, 1, 2, 3, 4, 10, 6, 7, 8, 9]) >>> a[5]="hund" Traceback (most recent call last):... ValueError: invalid literal for long() with base 10: Hund 37 / 93

38 Arrays III Erzeugen von Arrays >>> arange(10) # Kennen wir bereits array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) Die meisten Numpy Funktionen haben Arrays als Rückgabe >>> zeros(10,int) array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]) >>> ones(10,float) array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.]) >>> sqrt(range(5)) array([0., 1., , , 2.]) Die Funktion array erzeugt ein Array aus der Eingabe >>> array(range(5)) # Aehnlich wie : >>> float(5) array([0, 1, 2, 3, 4]) # / 93

39 Arrays IV Indizierung und Masken Indizierung kann zum Filtern von Arrays verwendet werden >>> a=arange(5) >>> b=arange(0,5,2) >>> a array([0, 1, 2, 3, 4]) >>> b array([0, 2, 4]) >>> a[b] array([0, 2, 4]) 39 / 93

40 Arrays IV Indizierung und Masken Die Boolsche Algebra kann auf Arrays angewendet werden >>> a=arange(5) >>> a array([0, 1, 2, 3, 4]) >>> b=a>2 >>> b array([false, False, False, True, True], dtype=bool) >>> a[b] # Benutze b als Maske array([3, 4]) >>> c=a<4 # Erstelle eine zweite Maske >>> a[b*c] # Verbinde beide Masken mit array([3]) # einem logischen Und 40 / 93

41 Rückblick: Grunndlegende Konzepte III Erinnerung: Aufgabe: Schreibe eine Funktion, die in einer Liste alle Einträge < -990 in 0 ändert. [2.2, 3, 4.2, -999, 5] [2.2, 3, 4.2, 0, 5] Benutze eine for-schleife, um auf die einzelnen Elemente zuzugreifen z.b.: for i in range( len(liste) ): Benutze liste[i], um an die einzelnen Einträge der Liste zu gelangen def clean_data(liste): for i in range(len(liste)): if liste[i] < -990: liste[i] = 0 41 / 93

42 Arrays IV Aufgabe: Schreibe eine Funktion, die in einem Array alle Einträge < -990 in 0 ändert. [2.2, 3, 4.2, -999, 5] [2.2, 3, 4.2, 0, 5] Erzeuge eine Maske, die alle Werte < -990 filtert Benutze die Maske, um die Werte in 0 zu ändern def clean_data(data_array): maske=data_array<-990 # Es geht auch kurz data_array[maske]=0 # data_array[data_array<-990]=0 42 / 93

43 Arrays V Mehrdimensionale Arrays Bisher haben wir mit 1D Arrays gearbeitet >>> a=ones(3) >>> a array([1., 1., 1.]) >>> a.shape # shape ist ein Attribut von Arrays (3,) # a ist ein 1D Array der Laenge 3 >>> b=ones((3,3),int) # Achtung: Explizite Typisierung! >>> b array([[1, 1, 1], [1, 1, 1], [1, 1, 1]]) >>> b.shape (3, 3) # b ist ein 2D Array der Dimension 3*3 43 / 93

44 Arrays V 1D Arrays sind wie Zeilenvektoren Zeile a=ones(3) 0 a[0]=1. 1 a[1]=1. 2 a[2]=1. 44 / 93

45 Arrays V 2D Arrays sind wie Matrizen/Tabellen Zeile a=ones((3,3)) Spalte a[0,0]=1. a[0,1]=1. a[0,2]=1. 1 a[1,0]=1. a[1,1]=1. a[1,2]=1. 2 a[2,0]=1. a[2,1]=1. a[2,2]=1. 45 / 93

46 Rückblick: Grundlegende Konzepte I Erinnerung: Datei Ein/Ausgabe: read f = open("bsp1.txt", r ) for line in f: print line f.close() Ausprobieren! Jede line wird als Text eingelesen. Wie kommen wir an die Zahlenwerte? s = "10 15" l = s.split() #-> l = ["10", 15"] x = float(l[0]) #-> y = 10.0 y = float(l[1]) #-> x = / 93

47 Numpy Datei Ein/Ausgabe Eingabe: loadtxt >>> data = loadtxt("bsp1.txt") Die gesamte Datei wird auf einmal gelesen. Wie kommen wir an die Zahlenwerte? Ganz einfach... >>> x = data[:,0] >>> y = data[:,1] Und jetzt plotten wir x gegen y... >>> plot(x,y) 47 / 93

48 Rückblick: Grundlegende Konzepte I Erinnerung: Aufgabe: Lies bsp1.txt ein, und speichere die Zahlen der beiden Spalten in den Listen X, Y. Wende.split() auf line an. Wandel die Strings in float um. Benutze.append() um die Werte an X,Y anzuhängen. X = [] Y = [] f = open("bsp1.txt", r ) for line in f: l = line.split() X.append(float(l[0])) Y.append(float(l[1])) f.close() Hat sich erledigt! 48 / 93

49 Numpy Datei Ein/Ausgabe Ausgabe: savetxt In aller Kürze... >>> savetxt(dateiname,data_array) sollte es tun! Aufgabe: Schreibe mit Hilfe von savetxt die Zahlen in die Datei ausgabesavetxt.txt. >>> savetxt("ausgabesavetxt.txt",arange(101)) Schöner ist evtl. >>> savetxt("ausgabesavetxt2.txt",arange(101),fmt="%i") 49 / 93

50 Histogramme Was macht histogram Wir haben folgende Punkte : array([0.3,0.66,1.1,1.8,1.9,2.4]) Wir moechten wissen wie viele Punkte haben wir in den Intervallen? Numpy histogram zaehlt fuer uns! / 93

51 Histogramme Wie verwendet man histogram Wir haben folgende Punkte : array([0.3,0.66,1.1,1.8,1.9,2.4]) Wir moechten wissen wie viele Punkte haben wir in den Intervallen? Numpy histogram zaehlt fuer uns! >>> points=array([0.3,0.66,1.1,1.8,1.9,2.4]) >>> histogr,intervals=histogram(points,arange(4)) >>> histogr array([2, 3, 1]) >>> intervals array([0, 1, 2, 3]) 51 / 93

52 Vorbereitung auf Matplotlib Aufgabe: Wir bereiten uns nun auf den folgenden Teil, der sich intensiv mit der Visualisierung von Daten beschäftigen wird, vor. Die Datei wetter kiel.txt enthält Langzeitwetterdaten von der Wetterstation in Kiel Holtenau. Ziel ist es mit Hilfe des bisher Gelernten einen Loader für diesen Datensatz zu schreiben. Wenn die Daten geladen wurden sollten folgende Arrays im Speicher sein Zeit Zeiten möglichst als datetime Objekte LTemp Luftemperatur BTemp Bodentemperatur LDruck Luftdruck Regen Regenmenge Schnee Schneemenge Bedeckung Wolkenbedeckung 52 / 93

53 Vorbereitung auf Matplotlib Aufgabe: Benutze loadtxt zum laden der Daten. Folgende Argumente sind hilfreich usecols skiprows unpack delimiter Konvertieren der Zeiten mit : import datetime datetime.datetime.strptime(str(int(date)),"%y%m%d")) Wer mit dem Laden der Daten fertig ist, kann versuchen Histogramme aus den Daten zu erstellen und diese darzustellen. hist aus pylab kann gleichzeitig histogrammieren und plotten 53 / 93

54 Matplotlib Matplotlib is das Plotting-Interface zu den wissenschaftlichen Python-Bibliotheken Numpy und Scipy. Matplotlib bietet... einfache und verständliche Syntax eine unkomplizierte Einbindung in Python (fast) grenzenlose Möglichkeit zur Darstellung von Daten regelmäßige Funktions-Erweiterung dank steter Weiterentwicklung eine umfangreiche Dokumentation inklusive hunderter Beispiel-Plots Matplotlib bietet deswegen vor allem eins: Spaß beim Arbeiten mit wissenschaftlichen Daten 54 / 93

55 Was uns erwartet... >>> import pylab >>> DatenX, DatenY = lade_daten("./daten/wetter.dat") >>> Ax = pylab.figure().gca() >>> Ax.plot(DatenX, DatenY, lw = 2, label = "Wetter") >>> Ax.set_ylabel("Temperatur") >>> (...) 55 / 93

56 Erste Schritte in Matplotlib I Der erste Plot: import pylab # Erzeuge Daten x = arange(10) y = x**2 # Erzeuge Figur Fig = pylab.figure() # Erzeuge Achse Ax = Fig.gca() # Plotte Daten Ax.plot(x, y) 56 / 93

57 Matplotlib - Hilfe Hilfe in Python Auflistung von Funktionen und Methoden >>> import pylab >>> Ax = pylab.figure().gca() >>> Ax.<Tab> <Funktionen des Ax Objektes> >>> dir(ax) <Funktionen des Ax Objektes> Hilfe zu Funktionen und Methoden >>> Ax.plot? # nur ipython <Docstring von Ax.plot> >>> help(ax.plot) <Docstring von Ax.plot> 57 / 93

58 Matplotlib - Hilfe Hilfe im Web Dokumentation: Beispiele: Figure : Snapshot der Matplotlib Gallery 58 / 93

59 Erste Schritte in Matplotlib I Aufgabe: Benutze die Hilfe um mehr über den plot Befehl herauszufinden Welche Argumente gibt es? Wie kann man den Stil des Plots verändern? >>> from numpy import linspace, sin, pi >>> x = linspace(0,2*pi,100) >>> P1, P2, P3 = sin(x), sin(0.5*x), sin(2*x) Stelle P1, P2, P3 als Funktion von x dar. Benutze dafür Farben und Stile vergleichbar zu dem nachfolgenden Plot: 59 / 93

60 Erste Schritte in Matplotlib I Achsen Parameter I Erstellung der Achse und Daten Ax = pylab.figure().gca() Ax.plot(arange(10), arange(10), label="daten", marker="*") Achsenbeschriftung Ax.set_xlabel("X Label",fontsize=9) Ax.set_ylabel("Y Label",color="red") Achsenbereich Ax.set_ylim(-2,8) Ax.set_xlim(0,10) 60 / 93

61 Erste Schritte in Matplotlib I 61 / 93

62 Erste Schritte in Matplotlib I Achsen Parameter II Erzeugung einer sekundären y-achse Ax2=Ax.twinx() Ax2.plot(arange(10),1.5*arange(10),color="green") Ax2.set_ylabel("Y2-Label",color="green") Achsenmarkierung Ax.set_xticks([2,4,6]) # Explizite x-tick Markierung Ax.set_minorticks_on() # Anschalten der Zwischen-Ticks Ax.set_xticks([3,5,7],minor=True) # Explizite Zwischen-Ticks Erzeugung eines Rasters Ax.grid(which= both,axis= both ) 62 / 93

63 Erste Schritte in Matplotlib I Achsen Parameter II Achsenlegende Ax.legend() 63 / 93

64 Erste Schritte in Matplotlib I Aufgabe I Visualisiere den zeitlichen Verlauf der Temperatur und des Drucks der Wetterstation Kiel Holtenau. Ihr könnt hierfür zum Einlesen der Wetterdaten entweder euren eigenen oder den bereitgestellte Loader./aufgaben/wetter holtenau.py benutzen. Euer Endergebnis sollte in etwa wie folgt aussehen: 64 / 93

65 Erste Schritte in Matplotlib I Aufgabe II (Optional) Wer eine Herausforderung sucht, kann sich auch gerne an folgendem Plot versuchen, welcher mit dem Ax.scatter() Befehl erzeugt wurde. Die Regenmenge wird durch die Größe der Kreise dargestellt Die Temperatur wird durch die Farbe der Kreise visualisiert Die Menge an Schneefall wird durch die Quadratgröße bestimmt 65 / 93

66 Matplotlib - Fortgeschrittene Funktionen Matplotlib bietet eine große Zahl an weiterführenden Plot Techniken. Durchstöbert einfach die Beispiel Gallerie wenn ihr etwas bestimmtes sucht. Hier werden wir die 3 gebräuchlichsten Techniken kurz vorstellen. Isokonturlinien >>> Ax.contour(*args) Isokonturflächen >>> Ax.contourf(*args) Kontinuierliche Farbkonturen >>> Ax.pcolormesh(*args) 66 / 93

67 Matplotlib - Fortgeschrittene Funktionen Drei einfache Beispiele für Isokonturlinien (links), Isokonturflächen (mitte) und einer Kombination aus einer Farbkontur und Isokonturlinien (rechts). 67 / 93

68 Einschub: 2D-Histogramme Wenn wir folgende Punkte haben / 93

69 Einschub: 2D-Histogramme Und wissen möchten wieviele Punkte in den Quadraten liegen / 93

70 Einschub: 2D-Histogramme Können wir analog zu histogram, histogram2d verwenden / 93

71 Einschub: 2D-Histogramme Wie verwendet man histogram2d? >>> P_x=array([0.3,0.66,1.1,1.8,1.9,2.4]) >>> P_y=array([1.5,2.9,0.5,2.4,0.9,0.5]) >>> histogr,int_x,int_y=histogram2d(p_x,p_y,(arange(4),arange(4))) >>> histogr array([[ 0., 1., 1.], [ 2., 0., 1.], [ 1., 0., 0.]]) 71 / 93

72 Matplotlib - Fortgeschrittene Techniken Ein 2D-Histogramm kann z.b. mit pcolormesh dargestellt werden Die folgenden Zeilen erzeugen den rechten Plot. >>> fig=figure(figsize=(10.,10.)) >>> pcolormesh(int_x,int_y,histogr.t) >>> colorbar(ticks=[0,1,2]) Keine Angst: Eine ausführliche Erklärung folgt! 72 / 93

73 Matplotlib - Fortgeschrittene Techniken Um die Funktionsweisen von Ax.contour(*args), Ax.contourf(*args) und Ax.pcolormesh(*args) zu erläutern, werden wir zunächst einen zufällig generierten Datensatz erzeugen und diesen mittels des Ax.pcolormesh(*args) Befehls darstellen. Erzeugung eines zufällig generierten Datensatzes xvalues = append(normal(15, 2, size=1e6), \ normal(20, 5, size=1e6)) yvalues = append(normal(10, 3, size=1e6), \ normal(15, 2, size=1e6)) Einordnen der Zufallszahlen in ein 2D Histogramm: Histogram, xedges, yedges = histogram2d(xvalues, yvalues, \ bins = (arange(10,30,0.2), arange(0,20,0.2))) 73 / 93

74 Matplotlib - Ax.pcolormesh(*args) Bevor wir das 2D Histogramm plotten, einige Worte zur der allgemeinen Syntax von Ax.pcolormesh(*args) Syntax - Pcolormesh Ax.pcolormesh(X, Y, H, *args=vals) Dabei stellen X und Y die Bin Kanten in x- und y-richtung des Histogramms H dar. Dabei steht args für optionale Argumente, die an die pcolormesh Methode übergeben werden können. Die gebräuchlichsten Argumente sind dabei: cmap: Übergabe einer spezifischen Colormap vmin / vmax: unterer / oberer Grenzwert der pcolormesh Darstellung alpha: Transparenz der Darstellung Die Argument cmap und vmin, vmax werden wir später noch genauer beschreiben 74 / 93

75 Matplotlib - Ax.pcolormesh(*args) Der endgültige Plotbefehl für unsere Zufallsdaten ist denkbar einfach. Ax.pcolormesh(Xedges, Yedges, Histogram.T) Figure : Der einfache pcolormesh Befehl 75 / 93

76 Matplotlib - Ax.pcolormesh(*args) Bevor es zu der ersten Übung geht, gilt es eine Sache zu beachten: Histogram2D in Kombination mit contour und contourf Das erzeugte Histogramm mit histogram2d beinhaltet, wie üblich für numpy arrays, in der 0-ten Dimension die x- und in der 1-ten Dimension die y-werte. pcolormesh, contour und contourf benötigt jedoch ein umgekehrtes Format, d.h. um das Histogramm aus histogram2d zu nutzen, müssen wir das Histogramm transponieren (x und y vertauschen). Zusätzlich gibt histogram2d die Bin Kanten zurück, während contour und contourf die Bin Position benötigen (gilt nicht für pcolormesh). Ax.contourf(Xedges[:-1], Yedges[:-1], Histogram.T) Ax.contour(Xedges[:-1], Yedges[:-1], Histogram.T) Ax.pcolormesh(Xedges, Yedges, Histogram.T) 76 / 93

77 200 Matplotlib - Fortgeschrittene Techniken Aufgabe: Plotte durch Kombination des Ax.contour(*args) und Ax.contourf(*args) Befehls unseren Zufallsdatensatz in folgender Darstellung: Y-Werte X-Werte 100 Benutzt das Argument levels in Ax.contour(*args) Benutzt die Methode Ax.clabel(*arg) Benutzt die gängigen Methoden für die Achsendarstellung 77 / 93

78 Matplotlib - Colorbar Wir haben eben gelernt, wie wir mit Ax.clabel(*args) den Isokonturlinien eine Beschriftung zuweisen können. Jedoch hat die Farbdarstellung von pcolormesh und contourf noch keinen Bezug zu den Intensitäten der Daten. Hierfür verwenden wir die Colorbar aus Matplotlib. Erzeugung der - Colorbar Figure = pylab.figure() Ax = Figure.gca() # Auswahl der vorgefertigten Colormaps aus Matplotlib colormap = pylab.cm.get_cmap("jet") # Erzeugung des Farbkontur mit der ausgewaehlten colormap Mesh = Ax.pcolormesh([...], cmap=colormap) # Erzeugung der Colorbar colorbar = Figure.colorbar(Mesh) # Setzen des Colorbar Beschriftung colorbar.set_label("intensity") 78 / 93

79 Matplotlib - Colorbar Wir haben eben gelernt, wie wir mit Ax.clabel(*args) den Isokonturlinien eine Beschriftung zuweisen können. Jedoch hat die Farbdarstellung von pcolormesh und contourf noch keinen Bezug zu den Intensitäten der Daten. Hierfür verwenden wir die Colorbar aus Matplotlib. Figure : Eine typische Colorbar 79 / 93

80 Matplotlib - Colorbar Syntax - Colorbar Figure.colorbar(Mesh, *args=vals) Dabei stellt Mesh das Objekt dar, welches von pcolormesh, contour und contourf zurückgegeben wird. Dabei steht args für optionale Argumente, die übergeben werden können. Die gebräuchlichsten Argumente sind dabei: orientation: Orientierung der Colorbar ax: Achse auf der die Colorbar dargestellt wird ticks: Definitiert die Colorbar ticks pad: Abstand der Colorbar zur Achse 80 / 93

81 Matplotlib - Colorbar Noch ein kleiner Hinweis zur Benutzung der colormap für die Farbkontur-, Isokonturlinien- und Isokonturflächendarstellung Syntax - Colormap colormap = pylab.cm.get_cmap(arg) arg steht dabei für den Namen einer von vielen fertigen colormaps in matplotlib. Eine vollständige Liste der colormaps findest du unter colormaps Hinweis zum Ausblenden/Markieren von Daten colormap.set_under("white") colormap.set_over("green") Ax.pcolormesh([...], vmin=5, vmax=10) Dies würde unabhängig von der gewählten colormap alle Intensitäts Werte unter 5 bzw. über 10 in weiß bzw. grün darstellen 81 / 93

82 Matplotlib - Fortgeschrittene Techniken Aufgabe I Stellt die globale Temperatur als Funktion des Längen- und Breitengrades mit Hilfe von Ax.pcolormesh(*arg) dar. Hier ist ein mögliches Beispiel der Darstellung: Benutzt Ax.pcolormesh(*args) Verwendet die Colorbar Benutzt google für alles Weitere ;-) 82 / 93

83 Matplotlib - Fortgeschrittene Techniken Aufgabe II (optional) Stellt zusätzlich die Küstenlinien dar, welche in der Datei kuesten linien.dat definiert sind. Plottet zudem einige ausgewählte Städte mit Namen in die Weltkarte. Benutzt Ax.plot(*args) für die Küstenlinien und Städte Verwendet die Ax.set label(*arg) für die Städtenamen Benutzt google für alles Weitere ;-) 83 / 93

84 Matplotlib - Multipanel Plots Bei komplexeren Datensätzen bietet es sich häufig an, mehrere Achsen auf einer Grafik unterzubringen. = Multi-Achsen Plots (Multiplots) Automatische Achsenerzeung import pylab Figure = pylab.figure() Ax = Figure.add_subplot(nr_x, nr_y, i) Ax.plot(xdata, ydata) nr x - Anzahl der Achsen in x-richtung nr y - Anzahl der Achsen in y-richtung i - Aktueller plot (1,..., nr x*nr y) nr_y = Plot i=1 i= Plot Plot i=3 nr_x = Plot Plot Plot i=5 30 i= i= / 93

85 Matplotlib - Multipanel Plots Automatische Achsenerzeung - Fine tuning #Setzt horizontalen und vertikalen Abstand = 0 pylab.subplots_adjust(hspace =0, wspace =0) # Nebeneinander liegende Achsen teilen sich die y-achse Ax1 = Figure.add_subplot(1,2,1) Ax2 = Figure.add_subplot(1,2,2, sharey=ax1) # Entferne y-beschriftung von Ax2 Ax2_label = Ax2.get_yticklabels() pylab.setp(ax2_label, visible=false) / 93

86 Matplotlib - Multipanel Plots Aufgabe: Erzeuge eine Figure die Sinus, Cosinus und Tangens in drei übereinanderliegenden Achsen darstellt. Das Ergebnis sollte in etwa wie folgt aussehen: sin(x) cos(x) tan(x) x / 93

87 Matplotlib - Multipanel Plots Achsenerzeugung von Hand import pylab Figure = pylab.figure() Ax1 = pylab.axes([0.1, 0.1, 0.8, 0.8]) # Erzeugung der ersten Achse [x-pos, y-pos, breite, hoehe] Ax2 = pylab.axes([0.2, 0.2, 0.3, 0.3]) # Erzeugung der zweiten Achse Ax1.plot( sin(arange(0, 2*pi, 0.01))) Ax2.plot( cos(arange(0, 2*pi, 0.01))) / 93

88 Matplotlib - Letzte Anmerkungen Globale Einstellungen Bei umfangreicheren Plot ist es oftmals hilfreich die Standardeinstellungen von pylab zu ändern. Hierzu verwendet man rcparams aus matplotlib: from matplotlib import rcparams rcparams[ font.size ] = 20 Die Standardschriftgröße (12) wird auf 20 gesetzt. rcparams[ lines.linewidth ] = 3 Die Standardliniendicke (1) wird auf 3 gesetzt. Speichern von Plots Natürlich ist es auch möglich einen Plot direkt und mit den gewünschten Parametern zu speichern. Figure.savefig("Bildname.pdf", *arg) Genug mit neuen Informationen, kommen wir zur letzten Aufgabe! 88 / 93

89 Matplotlib - Multipanel Plots Aufgabe: Erstelle den folgenden Plot: 89 / 93

90 Ausblick und Zusammenfassung Ihr habt bereits viele Dinge kennengelernt, die euch den Umgang mit der Programmiersprache Python als wissenschaftliches Werkzeug erleichtern werden. Funktionsweise und Möglichkeiten von Python Umgang mit numpy, wie liest man Dateien effizient ein Einfache Plot Techniken wie Ax.plot(*arg) und Ax.scatter(*arg) Fortgeschrittene Plot Techniken wie Ax.contour(*arg) und Ax.pcolormesh(*arg) Nutzt unsere Musterlösungen und Handouts gerne als Startpunkt für eure eigene Arbeit! Aber... Man lernt niemals aus! 90 / 93

91 Ausblick und Zusammenfassung Figure : Pie Charts! [1] Figure : 3D Plots! [1] [1] Aus 91 / 93

92 Ausblick und Zusammenfassung Figure : Vektorfelder! [1] Figure : Interaktive Animation! [2] [1] Aus [2] Aus eigener Forschung 92 / 93

93 Ausblick und Zusammenfassung Wenn ihr noch Fragen zu Python, numpy oder matplotlib habt, wendet euch gerne an uns Die Musterlösungen, Handouts und Vorlesungsfolien findet ihr unter: 93 / 93

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Dokumentation für das Spiel Pong

Dokumentation für das Spiel Pong Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Kurzeinführung Excel2App. Version 1.0.0

Kurzeinführung Excel2App. Version 1.0.0 Kurzeinführung Excel2App Version 1.0.0 Inhalt Einleitung Das Ausgangs-Excel Excel-Datei hochladen Excel-Datei konvertieren und importieren Ergebnis des Imports Spalten einfügen Fehleranalyse Import rückgängig

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

2D - Plotten / Visualisierung

2D - Plotten / Visualisierung Fakultät Maschinenwesen Institut für Verarbeitungsmaschinen und mobile Arbeitsmaschinen 2D - Plotten / Visualisierung mit numpy und matplotlib 06.06.2011 Sebastian Voigt Wie was wo warum? Visualisierung

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut Mathematisches Institut mselva@math.uni-koeln.de 24 März 2009 Übungen zur Numerik 1 Vorlesung Übungen praktische Aufgaben Webseite: (Anmeldung, Übungsblätter) http://www.mi.uni-koeln.de/~mselva/numerik1.php

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit

Mehr

12. Dokumente Speichern und Drucken

12. Dokumente Speichern und Drucken 12. Dokumente Speichern und Drucken 12.1 Überblick Wie oft sollte man sein Dokument speichern? Nachdem Sie ein Word Dokument erstellt oder bearbeitet haben, sollten Sie es immer speichern. Sie sollten

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

Bauteilattribute als Sachdaten anzeigen

Bauteilattribute als Sachdaten anzeigen Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...

Mehr

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Zahlen auf einen Blick

Zahlen auf einen Blick Zahlen auf einen Blick Nicht ohne Grund heißt es: Ein Bild sagt mehr als 1000 Worte. Die meisten Menschen nehmen Informationen schneller auf und behalten diese eher, wenn sie als Schaubild dargeboten werden.

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Kapitel 6,»Objektorientierte Programmierung«, widmet sich der objektorientierten Programmierung mit Python.

Kapitel 6,»Objektorientierte Programmierung«, widmet sich der objektorientierten Programmierung mit Python. 1.3 Aufbau des Buchs lichkeiten offen. Auf die Unterschiede der beiden Versionen gehe ich besonders ein, sodass ein späterer Umstieg von der einen zur anderen Version leichtfällt. Erste Zusammenhänge werden

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Um in das Administrationsmenü zu gelangen ruft Ihr Eure Seite auf mit dem Zusatz?mod=admin :

Um in das Administrationsmenü zu gelangen ruft Ihr Eure Seite auf mit dem Zusatz?mod=admin : WebsoziCMS 2.8.9 Kurzanleitung Stand: 10.04.2008 Andreas Kesting Diese Kurzanleitung zum WebsoziCMS 2.8.9 beschränkt beschränkt sich auf die häufigsten Tätigkeiten beim Administrieren Eurer Homepage: -

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! (bei z.b. Google Microsoft Powertoys suchen, oder diesen Link verwenden )

Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! (bei z.b. Google Microsoft Powertoys suchen, oder diesen Link verwenden ) Wie erstelle ich Fotogalerien? Wie kann ich die auf meiner Homepage präsentieren? Ein Leitfaden für Anfänger unter Zuhilfenahme frei verfügbarer Software! Die ist eine Lösung für Windows XP Diese Lösung

Mehr

Nutzungsmöglichkeiten der interaktiven Westoverledingen Karte

Nutzungsmöglichkeiten der interaktiven Westoverledingen Karte Nutzungsmöglichkeiten der interaktiven Westoverledingen Karte Mit den interaktiven Karten möchte die Gemeinde Westoverledingen Ihnen einen Service bieten, der Ihnen die Orientierung in Westoverledingen

Mehr

Microsoft Access 2013 Navigationsformular (Musterlösung)

Microsoft Access 2013 Navigationsformular (Musterlösung) Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Access 2013 Navigationsformular (Musterlösung) Musterlösung zum Navigationsformular (Access 2013) Seite 1 von 5 Inhaltsverzeichnis Vorbemerkung...

Mehr

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt.

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt. Python Installation 1 Vorbereitung Diese Anleitung ist für Windows ausgelegt. 1.1 Download Python kann online unter https://www.python.org/downloads/ heruntergeladen werden. Hinweis: Im CoderDojo verwenden

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Computeria Rorschach Mit Excel Diagramme erstellen

Computeria Rorschach Mit Excel Diagramme erstellen Mit Excel Diagramme erstellen 25.12.2010 Roland Liebing Mit Excel Diagramme erstellen Diagramme können Zahlenwerte veranschaulichen, das heisst, mit Hilfe eines Diagramms können Zahlen besser miteinander

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Einkaufslisten verwalten. Tipps & Tricks

Einkaufslisten verwalten. Tipps & Tricks Tipps & Tricks INHALT SEITE 1.1 Grundlegende Informationen 3 1.2 Einkaufslisten erstellen 4 1.3 Artikel zu einer bestehenden Einkaufsliste hinzufügen 9 1.4 Mit einer Einkaufslisten einkaufen 12 1.4.1 Alle

Mehr

Informatik I Tutorial

Informatik I Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2015 Dr. Martin Hirt Daniel Jost Informatik I Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so dass ihr

Mehr

Variablen & erweiterte Aktionen nutzen

Variablen & erweiterte Aktionen nutzen 341 In Captivate können Sie mit Hilfe von Variablen Texte & Werte speichern oder Systeminformationen ausgeben. Außerdem können Sie auf Basis von Variablen komplexere Aktionen entwickeln, wie z. B. eine

Mehr

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf

Mehr

Bilder Schärfen und Rauschen entfernen

Bilder Schärfen und Rauschen entfernen Bilder Schärfen und Rauschen entfernen Um alte Bilder, so wie die von der Olympus Camedia 840 L noch dazu zu bewegen, Farben froh und frisch daherzukommen, bedarf es einiger Arbeit und die habe ich hier

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Anwendungsbeispiele. Neuerungen in den E-Mails. Webling ist ein Produkt der Firma:

Anwendungsbeispiele. Neuerungen in den E-Mails. Webling ist ein Produkt der Firma: Anwendungsbeispiele Neuerungen in den E-Mails Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Neuerungen in den E- Mails 2 Was gibt es neues? 3 E- Mail Designs 4 Bilder in E- Mails einfügen 1 Neuerungen

Mehr

Newsletter. 1 Erzbistum Köln Newsletter

Newsletter. 1 Erzbistum Köln Newsletter Newsletter 1 Erzbistum Köln Newsletter Inhalt 1. Newsletter verwalten... 3 Schritt 1: Administration... 3 Schritt 2: Newsletter Verwaltung... 3 Schritt 3: Schaltflächen... 3 Schritt 3.1: Abonnenten Verwaltung...

Mehr

MdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü.

MdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü. Programm Die Bedienung des Programms geht über das Hauptmenü. Datenbank Schnittstelle Die Datenbank wir über die Datenbank- Schnittstelle von Office angesprochen. Von Office 2000-2003 gab es die Datenbank

Mehr

DOKUMENTATION VOGELZUCHT 2015 PLUS

DOKUMENTATION VOGELZUCHT 2015 PLUS DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP

Mehr

Information zum SQL Server: Installieren und deinstallieren. (Stand: September 2012)

Information zum SQL Server: Installieren und deinstallieren. (Stand: September 2012) Information zum SQL Server: Installieren und deinstallieren (Stand: September 2012) Um pulsmagic nutzen zu können, wird eine SQL-Server-Datenbank benötigt. Im Rahmen der Installation von pulsmagic wird

Mehr

AutoTexte und AutoKorrektur unter Outlook verwenden

AutoTexte und AutoKorrektur unter Outlook verwenden AutoTexte und AutoKorrektur unter Outlook verwenden Die Hilfsmittel "AutoKorrektur" und "AutoTexte", die schon unter Microsoft Word das Arbeiten erleichtern, sind natürlich auch unter Outlook verfügbar.

Mehr

Hilfe zur Urlaubsplanung und Zeiterfassung

Hilfe zur Urlaubsplanung und Zeiterfassung Hilfe zur Urlaubsplanung und Zeiterfassung Urlaubs- und Arbeitsplanung: Mit der Urlaubs- und Arbeitsplanung kann jeder Mitarbeiter in Coffee seine Zeiten eintragen. Die Eintragung kann mit dem Status anfragen,

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Witbox. Anleitung Repetier-Host. Witbox

Witbox. Anleitung Repetier-Host. Witbox Anleitung Repetier-Host Anleitung Repetier-Host Deutsch INHALT 3 Installation und Konfiguration von Repetier-Host 4 Installation 4 Installation unter Linux 5 Installation unter MacOS 5 Installation unter

Mehr

Graphic Coding. Klausur. 9. Februar 2007. Kurs A

Graphic Coding. Klausur. 9. Februar 2007. Kurs A Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Running R. Windows Aus Menü. Lese R Code ein führt den Code auch gleich aus, eventuell muss vorher das Verzeichnis gewechselt werden.

Running R. Windows Aus Menü. Lese R Code ein führt den Code auch gleich aus, eventuell muss vorher das Verzeichnis gewechselt werden. Einführung 1 / 1 Einführung 2/1 Running R Windows Aus Menü Linux Lese R Code ein führt den Code auch gleich aus, eventuell muss vorher das Verzeichnis gewechselt werden. Auf der Konsole/Eingabeaufforderung:

Mehr

Verwendung des IDS Backup Systems unter Windows 2000

Verwendung des IDS Backup Systems unter Windows 2000 Verwendung des IDS Backup Systems unter Windows 2000 1. Download der Software Netbackup2000 Unter der Adresse http://www.ids-mannheim.de/zdv/lokal/dienste/backup finden Sie die Software Netbackup2000.

Mehr

Herstellen von Symbolen mit Corel Draw ab Version 9

Herstellen von Symbolen mit Corel Draw ab Version 9 Herstellen von Symbolen mit Corel Draw ab Version 9 Einleitung : Icon Design-Überblick: 1) Gestalten in Corel Draw 10.0 3) Vorlage für Photopaint für Import von Corel 4) Einfügen in die PSD-Datei und Bearbeiten

Mehr

Informatik 1 Tutorial

Informatik 1 Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2014 Dr. Martin Hirt Christian Badertscher Informatik 1 Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera Getting Started General Workflow Anlegen von Schablonen Ausrichtung 3.2 Atoms Precision V2 Tutorial Working with Images Direct from Camera Die Ausrichtungseinstellungen ermöglichen die Ausrichtung der

Mehr

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) 3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Einführung in PHP. (mit Aufgaben)

Einführung in PHP. (mit Aufgaben) Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites

Mehr

Windows 7: Neue Funktionen im praktischen Einsatz - Die neue Taskleiste nutzen

Windows 7: Neue Funktionen im praktischen Einsatz - Die neue Taskleiste nutzen Windows 7: Neue Funktionen im praktischen Einsatz - Die neue Taskleiste nutzen Das können wir Ihnen versprechen: An der neuen Taskleiste in Windows 7 werden Sie sehr viel Freude haben. Denn diese sorgt

Mehr

Ihr CMS für die eigene Facebook Page - 1

Ihr CMS für die eigene Facebook Page - 1 Ihr CMS für die eigene Facebook Page Installation und Einrichten eines CMS für die Betreuung einer oder mehrer zusätzlichen Seiten auf Ihrer Facebook Page. Anpassen der "index.php" Installieren Sie das

Mehr

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen

Mehr

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen) 1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise

Mehr

Excel Pivot-Tabellen 2010 effektiv

Excel Pivot-Tabellen 2010 effektiv 7.2 Berechnete Felder Falls in der Datenquelle die Zahlen nicht in der Form vorliegen wie Sie diese benötigen, können Sie die gewünschten Ergebnisse mit Formeln berechnen. Dazu erzeugen Sie ein berechnetes

Mehr

Adobe Photoshop. Lightroom 5 für Einsteiger Bilder verwalten und entwickeln. Sam Jost

Adobe Photoshop. Lightroom 5 für Einsteiger Bilder verwalten und entwickeln. Sam Jost Adobe Photoshop Lightroom 5 für Einsteiger Bilder verwalten und entwickeln Sam Jost Kapitel 2 Der erste Start 2.1 Mitmachen beim Lesen....................... 22 2.2 Für Apple-Anwender.........................

Mehr

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Wie kann ein PDF File angezeigt werden? kann mit Acrobat-Viewern angezeigt werden auf jeder Plattform!! (Unix,

Mehr

Der einfache Weg zum CFX-Demokonto

Der einfache Weg zum CFX-Demokonto Der einfache Weg zum CFX-Demokonto Diese Anleitung hilft Ihnen bei der Eröffnung eines Demokontos beim CFX Broker. Jeder Schritt bis zur vollständigen Eröffnung wird Ihnen im Folgenden erklärt. Zur besseren

Mehr

Text-Zahlen-Formatieren

Text-Zahlen-Formatieren Text-Zahlen-Formatieren Beobachtung: Bei der Formatierung einer Zahl in eine Textzahl und umgekehrt zeigt Excel ein merkwürdiges Verhalten, welches nachfolgend skizziert werden soll: Wir öffnen eine neue

Mehr

EASYINSTALLER Ⅲ SuSE Linux Installation

EASYINSTALLER Ⅲ SuSE Linux Installation EASYINSTALLER Ⅲ SuSE Linux Installation Seite 1/17 Neuinstallation/Update von Meytonsystemen!!! Die Neuinstallation von MEYTON Software ist relativ einfach durchzuführen. Anhand dieser Beschreibung werden

Mehr

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word Anleitung zum erstellen einer PDF-Datei aus Microsoft Word 1. Vorbereitung des PCs Um dem Tutorial folgen zu können müssen folgende Programme auf Ihrem PC installiert sein: Ghostskript 8.64: Ghostskript

Mehr

Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung

Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung rof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 23. April 2009 1/14 Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung Prof. G. Kemnitz Institut für Informatik,

Mehr

Anleitung für Berichte in Word Press, auf der neuen Homepage des DAV Koblenz

Anleitung für Berichte in Word Press, auf der neuen Homepage des DAV Koblenz Anleitung für Berichte in Word Press, auf der neuen Homepage des DAV Koblenz Diese Anleitung soll als Kurzreferenz und Schnellanleitung dienen um einfach und schnell Berichte auf der Homepage www.dav-koblenz.de

Mehr

Benutzerverwaltung mit Zugriffsrechteverwaltung (optional)

Benutzerverwaltung mit Zugriffsrechteverwaltung (optional) Benutzerverwaltung mit Zugriffsrechteverwaltung (optional) Mit der Zugriffsrechteverwaltung können Sie einzelnen Personen Zugriffsrechte auf einzelne Bereiche und Verzeichnisse Ihrer Internetpräsenz gewähren.

Mehr

10 Lesen und Schreiben von Dateien

10 Lesen und Schreiben von Dateien 10 Lesen und Schreiben von Dateien 10 Lesen und Schreiben von Dateien 135 10.1 Mit load und save Binäre Dateien Mit save können Variableninhalte binär im Matlab-Format abgespeichert werden. Syntax: save

Mehr

TeamSpeak3 Einrichten

TeamSpeak3 Einrichten TeamSpeak3 Einrichten Version 1.0.3 24. April 2012 StreamPlus UG Es ist untersagt dieses Dokument ohne eine schriftliche Genehmigung der StreamPlus UG vollständig oder auszugsweise zu reproduzieren, vervielfältigen

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E

Mehr

QUALIFIZIERUNG VON SYSTEMBETREUERINNEN UND SYSTEMBETREUERN. BartPE-BUILDER AKADEMIE FÜR LEHRERFORTBILDUNG UND PERSONALFÜHRUNG DILLINGEN

QUALIFIZIERUNG VON SYSTEMBETREUERINNEN UND SYSTEMBETREUERN. BartPE-BUILDER AKADEMIE FÜR LEHRERFORTBILDUNG UND PERSONALFÜHRUNG DILLINGEN QUALIFIZIERUNG VON SYSTEMBETREUERINNEN UND SYSTEMBETREUERN BartPE-BUILDER AKADEMIE FÜR LEHRERFORTBILDUNG UND PERSONALFÜHRUNG DILLINGEN Inhalt Anleitung zum Erstellen eines Windows-Live-Systems von CD bzw.

Mehr

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt. Internet, Codes und Update ab Version 13 Um Ihnen einen möglichst schnellen Zugang zu den aktuellsten Programmversionen zu ermöglichen liegen Update-Dateien für Sie im Internet bereit. Es gibt drei Möglichkeiten

Mehr

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper) Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10 Technische Informationen (White Paper) Inhaltsverzeichnis 1. Über dieses Dokument... 3 2. Überblick... 3 3. Upgrade Verfahren... 4

Mehr

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg. Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Urlaubsregel in David

Urlaubsregel in David Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5

Mehr

IDA ICE - Konvertieren und Importieren von mit TRY_Effekte_aufpraegen.exe erzeugten Datensätzen

IDA ICE - Konvertieren und Importieren von mit TRY_Effekte_aufpraegen.exe erzeugten Datensätzen IDA ICE - Konvertieren und Importieren von mit TRY_Effekte_aufpraegen.exe erzeugten Datensätzen Mit Einführung der 2010 TRY (Test Referenz Jahr) Klimadatensätze ist es erstmals möglich, neben den für 15

Mehr

Berechnungen in Access Teil I

Berechnungen in Access Teil I in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer

Mehr

Das Handbuch zu KAppTemplate. Anne-Marie Mahfouf Übersetzung: Burkhard Lück

Das Handbuch zu KAppTemplate. Anne-Marie Mahfouf Übersetzung: Burkhard Lück Anne-Marie Mahfouf Übersetzung: Burkhard Lück 2 Inhaltsverzeichnis 1 Einleitung 5 2 Arbeiten mit KAppTemplate 6 3 Welche Vorlage brauchen Sie? 9 3.1 Die C++-Vorlage für eine grafische KDE4-Anwendung................

Mehr

Dokumentation. estat Version 2.0

Dokumentation. estat Version 2.0 Dokumentation estat Version 2.0 Installation Die Datei estat.xla in beliebiges Verzeichnis speichern. Im Menü Extras AddIns... Durchsuchen die Datei estat.xla auswählen. Danach das Auswahlhäkchen beim

Mehr

Schritt 1 - Registrierung und Anmeldung

Schritt 1 - Registrierung und Anmeldung Schritt 1 - Registrierung und Anmeldung Anmeldung: Ihre Zugangsdaten haben Sie per EMail erhalten, bitte melden Sie sich mit diesen auf www.inthega-datenbank.de an. Bitte merken Sie sich die Zugangsdaten

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr