Daten Visualisieren
Matplotlib
Um mit Python Daten visuell darzustellen, eignet sich die Software-Bibliothek matplotlib.
Damit wir matplotlib verwenden können, müssen wir die Bibliothek zuerst importieren:
import matplotlib.pyplot as plt
Danach können wir über die spezielle Variable plt zugreifen und Diagramme zeichnen. Die eigentlichen Funktionen der Bibliothek können wir über diese plt Variable aufrufen, d.h. die plot Funktion von matplotlib erhalten wir durch plt.plot().
Ein unkompliziertes Diagramm erhalten wir, in dem wir ein Feld mit Werten an die plot Funktion übergeben, sowie die show Funktion aufrufen um das Diagramm darzustellen.
Dadurch werden die Werte aus dem Feld auf der y-Achse abgebildet, während die x-Achse die Position im Feld anzeigt.
Beispiel: Einfaches Liniendiagramm
Deine Abbildung
Deine Abbildung wird hier erscheinen
In diesem Diagramm werden die Werte aus dem Feld als 0.0, 1.0, ... auf der x-Achse abgebildet. Falls die Werte nicht gleichmässig auf der x-Achse verteilt sind, bzw. falls diese Achse eine eigene Bedeutung trägt, dann können wir die x-Werte auch gezielt angeben mit einem zweiten Feld:
Beispiel: Einfaches Liniendiagramm mit x & y Werten
Deine Abbildung
Deine Abbildung wird hier erscheinen
Für ein gutes Diagramm sind immer die Achsen zu beschriften, andernfalls erkennt man nicht was dargestellt wird. Dies kann mit den Funktione xlabel und ylabel gemacht werden. Um dem Diagramm einen Titel zu geben, kann die Funktion title verwendet werden.
Beispiel: Einfaches Liniendiagramm mit Beschriftung
Deine Abbildung
Deine Abbildung wird hier erscheinen
Daten können auch in einer anderen Diagramm Form dargestellt werden, mit der Funktion bar kann z.B. ein Säulendiagramm erstellt werden:
Beispiel: Daten darstellen mit Säulendiagramm (Bar plot)
Deine Abbildung
Deine Abbildung wird hier erscheinen
Mit der Bibliothek matplotlib können wir relativ einfach Daten visualisieren.
Aufgaben
Würfel Verteilung: absolute Häufigkeit
Nehmt ein Würfel und würfelt 10-15 mal. Notiere dir dabei wie oft jede Zahl gewürfelt wird.
Question
Stelle die erhobenen Daten aus deinem Würfel-Experiment hier dar:
Deine Abbildung
Deine Abbildung wird hier erscheinen
.128013d/nS52Lc8[ysvf7.;wkWlö4 u!tm1VTp6D=ä(9üPxHo0]re3bi_g):z,ajh050b0V0B0)0Y0v0m0y0i0v0)0m0m0J010B0Y0G010406050m0z0C0C0)0U0l040h0w160d0!050c16181a1c140G04051q1j1t0c1q140b0Y0n0@0_0{0}0+0Y0!0+0v1H0+0B12050/0X0v0V1C0`0|011G1I1K1I0B1Q1S1O0B0U1r0B0+0@0R0=0G0)0d0}0g011U1E010o0;0V0d0)0C0V1O0m1=0d1{1W1~1S2123120a0y1e1g0!0m0n0R0U0m0i1J0)1i1k271r0c1-2w1*1,1+1P0b290}1K0d200R0m1O1z1B0^1V2G0Y2I0d0R2N1O0G0U0V1r261?2w2$0d2#272F012U0U190v120y0D1j2)13152,2P1|2/2;2?0g2_2v142)2-300)2=040y0W342%362}1D1W393b0y0x3f2*3h1?382n313c0f3p2{372~3k3u3a2?0H3y3r283B0}3l2?0p3H2|3s3K2.3D3m0j3P3A3j3L3U2?0M3X3i2Q3T2:3E040D0S3(3R3Z3+3v0D2^2u3g3Q3J3?3M3.333{3q3}3t3,3b0D3e433z3)2 3#3.3o4b3I463^3x4i453S400D3G4n3Y3*4q3O4b1u2Z2w2N2z0b1,2E3S0i2V241r4C1s4A3}2(2v054I0-2+3=3*0t0d120Y0C0G2n0B3y0y4o3 4Z04190B0G0v0R0B1K0X0q0G0l4=4@4*4,4X120`504u2 4.4=4)4i4j4H0D12030y0I0Y0V0m0V0U0y0F0V0;0y0C0z0{0y0m0R0y1R5q0X200A3;3~4v121~0!3`2`4+561W0R120J554d3k120O0l2V0Y0-0O4?5a2`511|11040L3y5*1W0m5e0402030W0M0r4~0B0Z0g5^5`0r5/5O0}5,0#5F385I1H5L4R65015Q040q645U3L120/0U0!0.6k4W5+120L685b5:0}0i5?5g0u5j0y0R0o0B0y0*0V0-5n0u5m6J6q0s0N0U0o0V0v6J0s0z0U0-694p530d0%0)1J5T6t5P5R6/5G6u040k6s6@1W0C0Y12425)6f5,0(6?2-6~126d2%6z0174763S78044a726l7d12754b5N7l7h7j6e7l7e7p7c7h7a2*7c7w5M7y6 04717u6:66120T3H5c3?6B5f5h6F0e5q0B200y5q2I0?0u6U6W0=6(3 126T6V6X7V0Y7X7f3?6h5S7x73126`4y6f7z6{2-7D2v7q7K017h7I7b7|047o7E807G7t8b7v7n7@3*7h4h7k87842%866|0}7h4m8q8v7m8d8m1|7h4s8z837M7O7c586Y823S6h6j7 7l4.0X1a8O3?5,5.8S874.7.7)7;7?8#8A8s2*8u6a041?6,6.8,8I046x2`7P5H04598X3*8Q922 6n7=1S951W8Z9a0}5=12615{0E6Q5q0v0z1h0y2m287%7/0v0s9k0d0$0y0)0X5x9m0B9h638_3S677+8 919H7^128R8H6)040P0_5C0v9d8B8!9R3?9f5@5_5{9s7)0y8*0V9F9Y9J4t8T129M9#939P9Y4.0l9V6X9;6v9Y9%9F9A9C0z7X0y0Q0K0z5J0t7W9:9N3*9=8}8L9^8Naj1|94aq5V040m0+0R0sa25-8|351j4T2!4zaG0c4M2x4E1j2AaN9A1S4B1A2{aJ0.0:0=04.
Lösung
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 | import matplotlib.pyplot as plt
# Dieser Teil muss so bleiben!
fig1 = PyodidePlot('plot_2')
fig1.target()
# Wie oft jeder Wert gewürfelt wurde
anzahl = [2, 1, 3, 3, 1, 2]
# Die Seiten eines Würfels
würfelSeite = [1, 2, 3, 4, 5, 6]
plt.bar(würfelSeite, anzahl)
plt.title('Verteilung von Würfelwerten: absolut')
plt.xlabel('Würfel Seite')
plt.ylabel('absolute Häufigkeit')
plt.show()
|
Wenn du die Würfel-Ergebnisse als Diagramm darstellst, siehst du eine Verteilung: Für jede Augenzahl (1–6) wird gezeigt, wie oft sie vorkommt. Eine Verteilung beschreibt also, wie sich Daten auf verschiedene Werte/Kategorien aufteilen. Hier ist die Kategorie: wie häufig jede Zahl beim Würfeln erscheint.
Würfel Verteilung: relative Häufigkeit
Question
Stelle die erhobenen Daten aus deinem Würfel experiment hier dar. Nun aber als relative Häufigkeiten, d.h. die Anzahl pro Würfelseite werden als Prozentzahl von allen Würfen ausgedrückt.
Deine Abbildung
Deine Abbildung wird hier erscheinen
.128013d/nS52Lc8[Aysvf7.;wkWlö4 u!tm1VTp6D=ä(9üPxHo0]Fre3bi_g):z,ajh050b0X0C0+0!0w0n0z0i0w0+0n0n0K010C0!0H010406050n0A0D0D0+0W0m040h0x180d0$050c181a1c1e160H04051s1l1v0c1s160b0!0o0_0{0}0 0-0!0$0-0w1J0-0C14050;0Z0w0X1E0|0~011I1K1M1K0C1S1U1Q0C0W1t0C0-0_0S0@0H0+0d0 0g011W1G010p0?0X0d0+0D0X1Q0n1@0d1}1Y201U2325140a0z1g1i0$0n0o0S0W0n0i1L0+1k1m291t0c1/2y1,1.1-1R0b2b0 1M0d220S0n1Q1B1D0`1X2I0!2K0d0S2P1Q0H0W0X1t281^2y2(0d2%292H012W0W1b0w140z0E1l2+15172.2R1~2;2?2^0g2{2x162+2/320+2@040z0Y362)382 1F1Y3b3d0z0y3h2,3j1^3a2p333e0f3r2}39303m3w3c2^0I3A3t2a3D0 3n2^0q3J2~3u3M2:3F3o0j3R3C3l3N3W2^0N3Z3k2S3V2=3G040E0T3*3T3#3-3x0E2`2w3i3S3L3^3O3:353}3s3 3v3.3d0E3g453B3+313%3:3q4d3K483`3z4k473U420E3I4p3!3,4s3Q4v4f3E49140E3Y4A3@4x4h0E3)4H404J4D040g3=4N4m3/0g3|2|4l4r4h0g444Z4q414$4c4)4w4g4Q0g4j4.4B3$4;4o2|1w2#2y2P2B0b1.2G3U0i2X261t501u4~3 2*2x05560/2-4I1~0u0d140!0D0H2p0C3A0z4*4x5n041b0C0H0w0S0C1M0Z0r0H0m5C5E5u5w5l140|5N4/3m5y5C5t4k4!3^0i0E14030z0J0!0X0n0X0W0z0G0X0?0z0D0A0}0z0n0S0z1T5=0Z220B3?4O3114200$4Y2x5v5T0 0S140K5S4^2:140P0m2X0!0/0P5D5X4|6d0113040M3A5O1Y0n5$0402030Y0N0s5L0C0#0Y6G6I0s6A6v6x0%643a671J6a2)6B6e140r6S6j5y0;0W0$0:6*5k1Y6x0M6V5Y5Z3,5#5%0z0v5+0z0S0p0C0z0,0X0/5/0v5.756/0t0O0W0p0X0w750t0A0W0/6W4r5Q0Z5|0w0A0C0X0l0d0)0+1L6i6=6%046h4d6c6j6x0k6;651Y0D0!144(5f6T140*7E7P0 7R4E7O2/6x7Y7J6$017$044-7V7L7X7Z2/7/7;6#7W047+2|7K7F7.7S3:7(3U7*7^3U7/7U7|7?040U3J6{1~6}045(5*1V0e5=7x2a5=2K0^0v7g7i0@7q41147f7h7j8p0!7x893^6f7H8J3,7M863^7/6!2,7-887,6v8b8Q8O7@8X6j7`8!1~8W807-7/4?7=828,6b8.844{8;7!6w8$8-8Y844u6u8e8g5Y7-8k8m5+5-0^0V7j2G7u0w0z1B1V2#0{110o1V0R0L0A680u8q5~8t0-3c8r8A4x149l0+9n0X9q9s1J9u8H8N1~8L7I8 8e0k954Z8i3m140C5E3c9N1Y9P9$3N0Z141n8*6?146z4d7-5y0+7t1=7w7y7A7C0w9.0 6U9B5P040p2p9)6k040Qa80S0t5o0da89@9_7v7x7z7B7D9=7}0(3J0zat818|5y9E9G9I9t8qa0018L6)ap6+5Q0H0H220baD6@aD5yab8%828L0cah9Y9!9 aH8=146_9V9?145WaDaFaQ140Z1caO9:a/048D8y8G8Ia#8|8?2)av6X04ay1C9H9raB9Ma~7)a%a39X04a,bb3Ua.bi8B04115F0Xa?6yaD6D146P6J8w8E9h0F7c5=7v1jbw6Rbl8#04a(37a*bg7ka-6(a^0Q0{61a!93a$bsbI1~bu6F6Hbx8x7j0za|0XbGbrbL3~6v5VbPb!9%bRb_3N140mbU7jbr9;bX8|b$bGb59o0zaA9K8qb/b|8}bKbeb}bO6t8{2/bkc4b30n0-adc2b;460c5h2$4}cz0c5a2z521l2CcG9^1U4 1C2}cC0:0=0@04.
Lösung
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 | import matplotlib.pyplot as plt
# Dieser Teil muss so bleiben!
fig1 = PyodidePlot('plot_3')
fig1.target()
# Wie oft jeder Wert gewürfelt wurde
absoluteAnzahl = [2, 1, 3, 3, 1, 2]
# Die Seiten eines Würfels
würfelSeite = [1, 2, 3, 4, 5, 6]
# Dieses Feld soll die relative Häufigkeit beinhalten
relativeHäufigkeit = []
total = sum(absoluteAnzahl)
for x in absoluteAnzahl:
relativeHäufigkeit.append(x / total)
plt.bar(würfelSeite, relativeHäufigkeit)
plt.title('Würfel Verteilung')
plt.xlabel('Würfel Seite')
plt.ylabel('relative Häufigkeit')
plt.show()
|
Würfel Verteilung 3: Mit Programm würfeln
Question
Würfle nun mit einem Programm 100, 1000 und 10,000 mal und erstelle ein Diagramm der relativen Häufigkeiten. Was fällt dir dabei auf?
Deine Abbildung
Deine Abbildung wird hier erscheinen
.128013d/nS52Lc8[Aysvf7.;w{kWlö4 u!tm1?VTpN6D=ä(9ü}PxHIo0]Fre+3bi_g):Z,zajh050b0$0D0=0*0x0n0A0i0x0=0n0n0N010D0*0J010406050n0B0E0E0=0#0m040h0y1f0d0,050c1f1h1j1l1d0J04051z1s1C0c1z1d0b0*0o101214160@0*0,0@0x1Q0@0D1b050{0)0x0$1L1315011P1R1T1R0D1Z1#1X0D0#1A0D0@100X0~0J0=0d160g011%1N010p0}0$0d0=0E0$1X0n1~0d241)271#2a2c1b0a0A1n1p0,0n0o0X0#0n0i1S0=1r1t2g1A0c1_2F1?1^1@1Y0b2i161T0d290X0n1X1I1K111(2P0*2R0d0X2W1X0J0#0$1A2f1 2F2/0d2.2g2O012%0#1i0x1b0A0F1s2=1c1e2^2Y252{2}2 0g322E1d2=2_390=2~040A0(3d2:3f361M1)3i3k0A0z3o2?3q1 3h2w3a3l0f3y343g373t3D3j2 0L3H3A2h3K163u2 0q3Q353B3T2`3M3v0j3Y3J3s3U3%2 0Q3*3r2Z3$2|3N040F0Y3;3!3,3@3E0F312D3p3Z3S3 3V3`3c443z463C3^3k0F3n4c3I3=383.3`3x4k3R4f413G4r4e3#490F3P4w3+3?4z3X4C4m3L4g1b0F3)4H3~4E4o0F3:4O474Q4K040g3|4U4t3_0g43334s4y4o0g4b4*4x484-4j4:4D4n4X0g4q4^4I3-4{4v4~4P4`3E0g4B534V554%4G594$3k0g4N5e4,4{4T5j4=4X0(4!5n4W3E0(4)3e4;5t3_0(4/5x4_4J5u4@5D4 405A4}5I545F5A525N5a5P3k0(585S5f1b0(5d5Y5k5u5i5%5o5u5m5+5z3k0z5r5/5b5;5w455E503E0z5C5{5J490z5H615O5}3_0z5M665T685;5R6c5Z040z5X6h5(695$6m5,695*6q5:1b0z5.2:1D2,2F2W2I0b1^2N3#0i2(2d1A6D1B6B462;2E056J0_2@67010v0d1b0*0E0J2w0D3H0A5y386!041i0D0J0x0X0D1T0)0r0J0m6?6^6+6-1)0v1b13715|2`6/6?6*4#3#6Z6#6%6)77626/0#1 0b0X0E3Q4+3 0i0F1b030A0M0*0$0n0$0#0A0I0$0}0A0E0B140A0n0X0A1!7H0)290C3}6d2`1b270,5`2?6,780X1b0N7j6X6/0T0m2(0*0_0T6@7c3372161a040P3H7|010n7v0402030(0Q0s6 0D0+0z87890s81787~0-7W3h7Z1Q7$6W7X7*040r8j621b0{0#0,0`8x6X7~0P8m4r7s3?7u7w0A0K0.0A0w7A0o7A0x7J3j0A0t0R0#0p0$0x0d0G8n4y1b0K7-8t7+8:2_0E0*4L0Y5?3p8K258M047x0W2h1I7B0$0E0A0!8(0_7N0J7H2z7D2h0t0*0#0:8Z7A0A0X0p0D0A0?0$0t7H0~0A7H2R0A0/0=1S8,7t857x8C8!8$8(9s0t0B0#0_9G4E750)7O0x0B0D0$0l0d0;9E0x8?3#8u7,4k7(5J7~0k8E7X8^1b8|2?827~0:9+3 9_049{8s2_9~a03?a2a49}1b9 9/82aa9@a6ada825ah4kac04ae339:6Xan7{8k1b0Z7r8274040p2wal3t1b0+aG160X0t6#0daK2`0)1b7m1q0$ai3#8GaX488.a!3?8l0.3Q0Aa,at7X6/9P8$aQ9-aQ7l7n7pa%258u8wao78a_0d1I0d7`6Sax7 a|1)a28rapar2Ea.8@8_046l9|b88I4*a-bh7e6#0pa^1ba;buaf7)7+9.asagbjbdb8a*4rbqbq826/0=9W1|9Z9#9%9)ba7}1b9?b05Javb79;aya?1b0%bCbgbE4L7rbL78aC0*bybDb1bw9Qb^b-bA040Nb,2:bra1bj60bmb%04bIbpbKa,bM9V9XbR9$9(9FbZ8FbXbV01bccp7~azbz5J8ub+aQcr8Jb;5Jb?b}c3cf04bxb)c0c27%b.0465c8cncaa+cdc49U04bOch9!cjbUcm7X9=cpa2c7a5aYb(cv6XcxcM3lcO8r0606cC6XcEbvcIb|cKc1czbj6bcRc)1bcb3ecVcW38cgbQc#bTclawc9bYdlaubjcQc.3 ctcKcyc;9^bFb:a-aBbtd0cJdx2_9-c@debbbj6gd8ajcTbJcVcHcZdhbSck9*c(dPdnb$dp6wcsc:b_cwb*dJc_dAceb=dDdG8-d1a=d@3 dId51bbldsa(dacUcddTbP9YdidXd)04d#6z78a2dNe125dud{3?c?d~3`aA78907x7z1$0e7H9!2h9A7B8R8#8%0~9TdfcIeD8(ew0*9!d3aQc*dZ3#cAdod9aqeoc-beeodreZelamd6ebbfcGefdMe*eoe0apcu4*8~1)es7y7A7C0 9a0x2N9X8W950A2,12180o1$0V0O0B7!0vex7Q9A0@3jeyeGaH04f60=f80$fbfd1QffeMeOe%1)9=e?3ee^3U8z6^3jfyd+7.aS041ueb80eRa#cYe7cidjdYeUdPbo5@737ZaFfzfF040Ua?aN042#d0dUe8dWc%fYc/dQccd;8yfo8(fq1Jfsfcfeexcpa~cpbN0J9eb3fPg91bf,f)018u0cd00DfHfXd$eVf!8}cH7bg71ba f_fS0)1jgefRcX9LeEeLeNgEejakgi7lg0frftg5fxgKfA1bgs4db`04gvgUaLgxgf04186_aWg$01aZg.0n0=7Zcp841b8g8a0weJ8W0H7D9!0}0B1q8Qg^bj0ug)8/g;bj0Sg^850A0;fd0O0x1-1$g}9Mg{8ig.8lfmf*g#gzemg(g.6/0U127Tgpeec9fQhx25g_8688g|g~0AgI0$hqebgX4l7.1bhwgqdHhzhJfn0mhD8(gDh%16hLhqfpfr0AgRfvexhThsgWhu7Yg!0xb6hGc=h$h!d^0n0@aMfPhV1d0c6U2-6Aif0c6N2G6F1s2JimbO1#6C1J34ii0`0|0~04.
Lösung
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 | import matplotlib.pyplot as plt
import random
# Dieser Teil muss so bleiben!
fig1 = PyodidePlot('plot_4')
fig1.target()
# N: Wieviel mal würfeln?
N = 100
# In diesem Felde speichern wir, wie oft jeweils eine Zahl
# gewürfelt wurde
absoluteAnzahl = [0, 0, 0, 0, 0, 0]
for _ in range(N):
wurf = random.randint(1, 6)
if wurf == 1:
absoluteAnzahl[0] += 1
if wurf == 2:
absoluteAnzahl[1] += 1
if wurf == 3:
absoluteAnzahl[2] += 1
if wurf == 4:
absoluteAnzahl[3] += 1
if wurf == 5:
absoluteAnzahl[4] += 1
if wurf == 6:
absoluteAnzahl[5] += 1
# Die Seiten eines Würfels
würfelSeite = [1, 2, 3, 4, 5, 6]
# Dieses Feld soll die relative Häufigkeit beinhalten
relativeHäufigkeit = []
total = sum(absoluteAnzahl)
for x in absoluteAnzahl:
relativeHäufigkeit.append(x / total)
plt.bar(würfelSeite, relativeHäufigkeit)
plt.title(f'Würfel Verteilung: {N} zufällige Würfe')
plt.xlabel('Würfel Seite')
plt.ylabel('relative Häufigkeit')
plt.show()
|
Nun können wir dieses Programm noch etwas verallgemeinern. Um weitere interessante Experimente mit Würfel und Verteilungen durchführen zu können.
Question
Erweitere dein Programm:
- um mit einer variablen Anzahl Würfel zu würfeln.
- Würfle mit einem 12-seitigen Würfel. Wie verändert sich die Verteilung?
- Nimm nun zwei 6-seitige Würfel, würfle mit denen und addiere die Augenzahlen. Beobachte nun die Verteilung.
Deine Abbildung
Deine Abbildung wird hier erscheinen
.128013d/nS52Lc8[Aysvf7.;w{kWlö4 u!tm1?VTpN6D=ä(9ü}PxHo0]Fre+3bi_g):z,ah050b0#0D0:0)0x0n0A0i0x0:0n0n0N010D0)0J010406050n0B0E0E0:0!0m040h0y1c0d0+050c1c1e1g1i1a0J04051w1p1z0c1w1a0b0)0o0}0 11130;0)0+0;0x1N0;0D18050^0(0x0#1I1012011M1O1Q1O0D1W1Y1U0D0!1x0D0;0}0W0{0J0:0d130g011!1K010p0`0#0d0:0E0#1U0n1{0d211$241Y2729180a0A1k1m0+0n0o0W0!0n0i1P0:1o1q2d1x0c1?2C1:1=1;1V0b2f131Q0d260W0n1U1F1H0~1#2M0)2O0d0W2T1U0J0!0#1x2c1|2C2,0d2+2d2L012!0!1f0x180A0F1p2/191b2=2V222^2`2|0g2 2B1a2/2?360:2{040A0%3a2-3c331J1$3f3h0A0z3l2:3n1|3e2t373i0f3v313d343q3A3g2|0L3E3x2e3H133r2|0q3N323y3Q2@3J3s0j3V3G3p3R3!2|0Q3%3o2W3Z2_3K040F0X3.3X3)3;3B0F2~2A3m3W3P3|3S3@39413w433z3=3h0F3k493F3/353+3@3u4h3O4c3~3D4o4b3Y460F3M4t3(3:4w3U4z4j3I4d180F3$4E3{4B4l0F3-4L444N4H040g3_4R4q3?0g40304p4v4l0g484%4u454*4g4-4A4k4U0g4n4=4F3*4^4s4{4M4@3B0g4y504S524!4D564Z3h0g4K5b4)4^4Q5g4/4U0%4X5k4T3B0%4$3b4.5q3?0%4,5u4?4G5r4;5A4|3}5x4`5F515C5x4 5K575M3h0%555P5c180%5a5V5h5r5f5!5l5r5j5(5w3h0z5o5,585.5t2-1A2)2C2T2F0b1=2K3Y0i2#2a1x5|1y5`432.2B05620?2;5L130v0d180)0E0J2t0D3E0A5v356j041f0D0J0x0W0D1Q0(0r0J0m6y6A6q6s1$0v18106J5B3R6u6y6p4Y3Y6i6k6m6o6P5G0d6u0!1|0b0W0E3N4(3|0i0F18030A0M0)0#0n0#0!0A0I0#0`0A0E0B110A0n0W0A1X710(260C3`5Q3R18240+5@2:6r6Q010W180N6#6g2@180T0m2#0)0?0T6z6U306K1317040P3E7H010n6=0402030%0Q0s6H0D0*0f7S7U0s7M7p7J0,7g3e7j1N7m6f7h7q180r7(6$180^0!0+0@7_7v7J0P7+4o6/3:6;6?0A0K0-0A0w6`0o6`0x733g0A0t0R0!0p0#0x0d0G7,4v180K7u7=7r047t4h7o5G0E0)4I0X5:3m862288046@8e0#8g8q1Z0e710D26771_8i0?6~0w8n8p8i0;0:7d8s8u45186|0)8Y0d8y2?8A8C308E7v8G185U8L7N6u8.780x0B8Y0l0d0.0:1P8{3Y8}9i3|7J0k0Y8;877Q6@6_8V8X8Z712O0|8)8o8q0n9q35188m9C0x8W8^0#9l3:9k8D7N9n9p9R7p8O030k0F0/0A0g9#0%9#0z9#0r9-9U5p226M040p2t9O9G040)9_1$0W0t6k8`9V6$0(186)1n9N4h9S187Laa7p6u8@8_807=7*0-3N0Aao907=970(999b0#9d9f9hae5G8A7^aA7v970J0J260baj2?82aL3Y92048K2:ab04844%apaq7-049I8+9L8YaO3|aCa*4B6NaHaJa-22aNaEar6k9}138A0$a{01aQ7:aUaW3b8M6L7j9^a3aF180*a 9 a1a 0da504a77~a=1$a@7Gaf8wbn7I180,am4oaY969H0B8obe7sbha66*6,bt7?04aDbq7`bk6*2Y7F6b7)acbKb1bK7J0/bG04ah26bZbv6.bz7p9=9@0!b$9|ba8za09{a28 96bjbla9bO81bWa^a!b(b{bU5GalanaYap7N9=0)0pb$0tbCchb@8|7s8~2BaZ8v9{bKa}bX8H3@b*04bxaXcccDbA04981_avax9g0xcz0kbK6ub?c1ak189/cq7Na}cp2-cr3|bY8506b6139X6^6`6|0|0Z8q2K998$6`0A2)0 150o1Z0V0O0B7k0v8X7a9y8-0xai6V8=bk8q0:c}0#d0d21Nd48^bE8Ba 9T6.cF0D6A3gdncZ7nb}8?1dczadcSa!cH9a9c9ecLczb442b.b8b;cmcs0Ubeb_2Yb$dGcJdJazdE3Y7JcB3bb-bPc{df1Gdhd1d38Xcu7@cPa/aI0daKc4d%c3d$dcdTdRa+180cb$dt0^cMd~9mb+85cF6Td@bMd_040(1gdCeka$8qa(c0c8c204b#e4a.ddc|d/did=dmec3:7*9F3q18eheG22a,eNeK04156Bet5^bV7KbK0n0:7jeZ7Q7#7V9B8+0A0H6}8Y0`0B1n8ceZcx0uek8xeQ130ncx0Se%2|0.d20O0x1*1Ze+0#e)7%e}01eIdbezeMe19Pd^fe6u0U0 7debfka?e0eu7=7P18fcfa8iesfcdLeJ7i04fjfwcnejfn180mfq8qeofefy7R7T7Vd-dg0AeDdk8XfEfefg9:eRfJeWaBfmfteR0n0;9 dCdM4a0c6d2*5_f~0c662D5~1p2Gg58.1Y5{1G31g10@0_0{04.
Lösung
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 | import matplotlib.pyplot as plt
import random
# Dieser Teil muss so bleiben!
fig1 = PyodidePlot('plot_5')
fig1.target()
# N: Wieviel mal würfeln?
N = 100
# Wieviele Seiten soll der Würfel haben?
seiten = 6
absoluteAnzahl = []
# Die Seiten eines Würfels
würfelSeite = [] #[1, 2, 3, 4, ...]
for i in range(seiten):
absoluteAnzahl.append(0)
würfelSeite.append(i + 1)
for _ in range(N):
wurf = random.randint(1, seiten)
for i in range(seiten):
if wurf == i+1:
absoluteAnzahl[i] += 1
# Dieses Feld soll die relative Häufigkeit beinhalten
relativeHäufigkeit = []
total = sum(absoluteAnzahl)
for x in absoluteAnzahl:
relativeHäufigkeit.append(x / total)
plt.bar(würfelSeite, relativeHäufigkeit)
plt.title(f'Würfel Verteilung: {N} zufällige Würfe')
plt.xlabel('Würfel Seite')
plt.ylabel('relative Häufigkeit')
plt.show()
|
# Tests(Groß-/Kleinschreibung wird nicht beachtet)(Ctrl+I)
(Alt+: ; Ctrl, um die Spalten zu vertauschen)
(Esc)