Level 2Jenter og teknologi

Skrevet av: Béatrice Bieuville

Kurs: Python
Tema: Tekstbasert
Fag: Programmering, Matematikk, Samfunnsfag
Klassetrinn: 8.-10. klasse, Videregående skole

Introduksjon

Speler det noko rolle å vera ei jenta eller ein gut når det gjeld å velja utdanning? Finst det eit kjønnsgap? I denne oppgåva skal du undersøkja spørsmålet, ved å laga ei programvare som viser data i eit diagram. Data som du skal bruke vart henta på samordnaopptak.no. Du skal programmera i Python, som er eit veldig godt programmeringsspråk for å handtere datasett.

Førebu koding

Her skal du henta filene som trengs, og førebu programmering i Python.

checkSjekkliste

.csv (for comma-separated values) er eit format for å lagra tabelldata i tekstform. Data frå ein vanleg tabell er lagra som tekst og ser slik ut:

Olympe de Gouges, 1791
Simone de Beauvoir, 1949
Simone Veil, 1975

I .csv-fila er det , eller ; mellom kvar kolonne.

Trinket gjer det mogleg å skrive og køyre Python i nettlesaren. Vanlegvis køyrer Python på PCen, ikkje i nettlesaren.

ikon upload
pyhton3 trinket prosjekt

Bygg diagrammet i main.py

No skal du laga eit diagram for å presentera data frå tabellen du har importert. Skriv koden under i main.py.

checkSjekkliste

import matplotlib.pyplot as plt
import numpy as np

Det er OK å vera litt lat av og til. Dermed tilsetter me as np, slik at me kan skrive np i staden for numpy i koden.

x1  = np.genfromtxt('jenter-teknologi.csv', skip_header=1, usecols=(0), unpack=True, delimiter=',')

I programmering startar ikkje data indexen på 1. Den aller fyrste tingen i ei liste har index 0.

y1 = np.genfromtxt('jenter-teknologi.csv', skip_header=1, usecols=(1), unpack=True, delimiter=',')
plt.plot(x1,y1, marker='p')
plt.show()

flagTest prosjektet

køyr

Prøv sjølv

  • Endre nummer etter skip_header og køyr koden ein gong til. Kva skjer? Kvifor bruker me skip_header ?

Utfordring #1

Når du teikna diagrammet, skreiv du plt.plot(x,y, marker='p'). Kan du endre på det og velja sjølv kva type marker du vil bruke?

Tips

Prøv andre marker som finns i matplotlib dokumentasjon. Køyr koden ein gong til. Kva skjer?

Utfordring #2

I .csv-filene: endre alle , med ; og køyr koden. Kva skjer? Kan du fiksa koden i main.py slik at den kan lese .csv-filene som no innheld ; ?

Tips

Sjekk delimiter parameter i main.py.

Tilsett kontekst

No har du eit diagram, men det står ikkje kva informasjon det viser. Desse linjene treng du å skrive over plt.show().

checkSjekkliste

plt.xlabel('År')
plt.ylabel('Andel jenter per 100 søkjarar')
plt.title('Andel jenter som vel teknologi utdanning som fyrsteval')

flagTest prosjektet

Trykk på køyr-knappen (over main.py tittelen).

Tilsett ei andre linje med data

Det kunne vera interessant å samanlikna data. No veit me kor mangeav søkjarane innan teknologi som er jenter. Kva med andre utdanningsområder? No skal du laga ein andre linje i diagrammet for å samanlikna data.

checkImport data

Utfordring #3

  • Kan du laga ein variabel x2, og lagra data frå kolonna 0 i jenter-helsefag.csv inni den?
  • Kan du laga ein variabel y2, og lagra data frå kolonna 1 i jenter-helsefag.csv inni den?

Tips

  • Denne delen av koden må du skrive rett etter x1- og y1`-variablane.
  • Du treng å bruke np.genfromtxt.
  • Måten å gjera det er det same når du har laga variablane x1 og y1.

checkSjekkliste

plt.plot(x1,y1, marker='p')

og i staden skrive (over plt.show()):

ax = plt.subplot()
linje1 = ax.plot(x1,y1, label="teknologi")
linje2 = ax.plot(x2,y2, label="helsefag")
ax.legend()

Utfordring #4

Kan du oppdatera tittelen til diagrammet?

flagTest prosjektet

Trykk på køyr-knappen.

Prøv sjølv

  • Kva skjer om du endrer label="teknologi" og label="helsefag" ?

Utfordring #5

  • Kan du bytta fargen til linjene? Du kan prøva å endre fargen til tittelen og labelene òg.

Tips

For å gjera det treng du å bruke parameter color:

linje1 = ax.plot(x1,y1, color="")

Du kan velja fargen du vil bruka blant dei som står i denne lista

saveLagre og del

Du har laga ei programvare som viser fleire dataset i eit diagram.

Programvara har laga eit bilete som heiter trinket_plot.png. Du kan trykkja på det for å åpna biletet i ei ny fane og lagra det.

Kva viser diagrammet når det gjeld datasetta som du har samanlikna?

Lisens: CC BY-SA 4.0

Forbedre denne siden

Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!