> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/da/figurer-og-tabeller/04-picture-environment.md).

# Tegning af diagrammer direkte i LaTeX

## Introduktion

LaTeX’s indbyggede `picture` miljø kan bruges til at skabe diagrammer/figurer—du behøver ikke *behøve* at indlæse nogen eksterne pakker for at bruge det, men pakker som [`pict2e`](https://ctan.org/pkg/pict2e?lang=en) og [`picture`](https://ctan.org/pkg/picture) er blevet skrevet for at udvide eller forbedre dets funktioner.

Denne artikel giver en kort introduktion til `picture` miljøet, og alle eksempler bruger [`pict2e` pakken](https://ctan.org/pkg/pict2e?lang=en). Mere omfattende dokumentation og en række nyttige eksempler er let tilgængelige i følgende ressourcer:

* [LaTeX2e uofficielle referencehåndbog](https://latexref.xyz/picture.html)
* [Den ikke helt så korte introduktion til LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (se kapitel 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [spørgsmål tagget `picture-mode` på tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` pakkedokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)

Sammenlignet med kraftfulde og avancerede grafikværktøjer som [TikZ/PGF](https://en.wikipedia.org/wiki/PGF/TikZ), [MetaPost](https://tug.org/metapost.html), [PSTricks](https://ctan.org/topic/pstricks?lang=en) eller [Asymptote](https://ctan.org/pkg/asymptote?lang=en) den `picture` miljøet kan synes ganske begrænset, men fra tid til anden kan det være tilstrækkeligt til det, du skal gøre.

## Oprettelse af et nyt billede

At oprette et nyt billede indebærer normalt følgende trin:

1. definér størrelsen på de tegningsenheder, du ønsker at bruge;
2. deklarér et `picture` miljø, som definerer billedstørrelsen;
3. tegn de enkelte grafiske komponenter ved hjælp af `\put`, `\multiput` eller `\qbezier` kommandoer.

### Definér størrelsen på tegningsenhederne

For at oprette et billede starter du normalt med at sætte *tegningsenhederne* via kommandoen `\unitlength`, som skal bruges uden for et `picture` miljø. Hvis du for eksempel skriver

```latex
\setlength{\unitlength}{1cm}
```

vil tegningsenhederne blive fortolket som multipla af 1cm. Standardenheden er 1pt.

### Definér størrelsen på dit billede

Den generelle form af `picture` miljøet er som følger

```latex
\begin{picture}(width, height)(Xoffset, Yoffset)
 ...
\end{picture}
```

hvor

* `width` og `højde` er værdier, i enheder af `\unitlength`, som definerer billedets størrelse. LaTeX bruger disse værdier til at oprette en boks, hvis dimensioner er
  * boksens (billedets) bredde = `width` × `\unitlength`
  * boksens (billedets) højde = `højde` × `\unitlength`
* `(Xoffset, Yoffset)` er en valgfri koordinat, som angiver billedets origo (nederste venstre hjørne), udtrykt som et *offset* i forhold til standardplaceringen. `Xoffset` og `Yoffset` udtrykkes også i enheder bestemt af den aktuelle værdi af `\unitlength`.

Bemærk, at `Xoffset` og `Yoffset` påvirker ikke den mængde plads, som LaTeX reserverer; dvs. boksens dimensioner.

#### Forstå billedets dimensioner

Vi vil oprette to billeder, begge ved brug af `\setlength{\unitlength}{1cm}` og hver med en `width` og `højde` på 3 enheder.

Det første billede bruger standardorigoen `(0,0)`:

```latex
\begin{picture}(3,3)
...
\end{picture}
```

det andet billede forskyder (flytter) origoen med `(1,1)`:

```latex
\begin{picture}(3,3)(1,1)
...
\end{picture}
```

### Tegning af grafik

Grafik oprettes ved hjælp af en sekvens af `\put`, `\multiput`, eller `\qbezier` kommandoer, som producerer de enkelte “komponenter” (eller “objekter”), hvoraf billedet eller illustrationen konstrueres:

* `\put(x, y){*component*}` tegner `*component*` på placering `(x, y)`.
* `\multiput(x, y)(dx, dy){n}{*component*}` tegner `*component*` `n` gange: begyndende ved placering `(x, y)` og derefter gentagne gange translateret med `(dx, dy)` for at tegne `*component*`.
* `\qbezier[n](x<sub>1</sub>, y<sub>1</sub>)(x, y)(x<sub>2</sub>, y<sub>2</sub>)`: tegner en [kvadratisk Bézier-kurve](https://en.wikipedia.org/wiki/B%C3%A9zier_curve#Quadratic_B%C3%A9zier_curves) hvor:
  * `n` et valgfrit heltal, som bestemmer antallet af punkter, der bruges til at tegne/producere kurven
  * `(x<sub>1</sub>, y<sub>1</sub>)` er kurvens startpunkt
  * `(x<sub>2</sub>, y<sub>2</sub>)` er kurvens slutpunkt
  * `(x, y)` angiver Bézier-kurvens (kvadratiske) kontrolpunkt

Et `*component*` er et grafisk element, som normalt produceres ved hjælp af grafiske primitiver såsom `\line`, `\oval`, `\circle`, `\vector` og så videre—se [LaTeX2e uofficielle referencehåndbog](https://latexref.xyz/picture.html) eller [Den ikke helt så korte introduktion til LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (kapitel 5) for detaljer om de tilgængelige primitiver.

**Bemærk**: Den [`pict2e` pakken](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf) udvider det oprindelige `picture` miljø for at give flere kommandoer til at tegne Bézier-kurver: `\bezier`, `\qbezier`, `\cbezier` og `\qbeziermax`.

### Forstå offset og origo

I de følgende eksempler bruges `\put` kommandoen til at tegne farvede prikker, som markerer vigtige koordinater (positioner) i grafikken. Begge eksempler bruger LaTeX’s `\fbox` kommando til at tegne en ramme omkring den boks, som LaTeX oprettede til at indeholde vores billede, og som viser *afgrænsningsrammen* for grafikken.

**Eksempel 1: Brug af standardorigoen**

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\usepackage[dvipsnames]{xcolor}
\begin{document}
\setlength{\unitlength}{1cm}
\setlength{\fboxsep}{0pt}

Dette er mit billede\fbox{%
\begin{picture}(3,3)
\put(0,0){{\color{blue}\circle*{0.25}}\hbox{\kern3pt \texttt{(0,0)}}}
\put(3,3){{\color{red}\circle*{0.25}}\hbox{\kern3pt \texttt{(3,3)}}}
\end{picture}}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Csetlength%7B%5Cfboxsep%7D%7B0pt%7D%0A%0AThis+is+my+picture%5Cfbox%7B%25%0A%5Cbegin%7Bpicture%7D%283%2C3%29%0A%5Cput%280%2C0%29%7B%7B%5Ccolor%7Bblue%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt+%5Ctexttt%7B%280%2C0%29%7D%7D%7D%0A%5Cput%283%2C3%29%7B%7B%5Ccolor%7Bred%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt+%5Ctexttt%7B%283%2C3%29%7D%7D%7D%0A%5Cend%7Bpicture%7D%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![dimensioner af LaTeX picture-miljøet](/files/19669dd3944b1c84150f42bfe7982a28375f7e10)

Den `\fbox` kommando tegner en ramme omkring grafikkens afgrænsningsramme og viser den plads (det område), som LaTeX reserverer:

* billedbredde = `width` × `\unitlength` = 3 × 1cm = 3cm.
* billedhøjde = `højde` × `\unitlength` = 3 × 1cm = 3cm.

Det første eksempel viser, at origoen `(0,0)`, er ved det punkt, hvor `\begin{picture}` kommandoen blev udført, lige efter teksten “This is my picture”. Derudover er det øverste højre hjørne ved positionen `(3,3)`, den `(bredde,højde)` værdierne angivet til `\begin{picture}(3,3)`.

**Eksempel 2: Forskydning af origoen med (1,1)**

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\usepackage[dvipsnames]{xcolor}
\begin{document}
\setlength{\unitlength}{1cm}
\setlength{\fboxsep}{0pt}

Dette er mit billede\fbox{%
\begin{picture}(3,3)(1,1)
\put(0,0){{\color{blue}\circle*{0.25}}\hbox{\kern3pt\texttt{(0,0)}}}
\put(1,1){{\color{orange}\circle*{0.25}}\hbox{\kern3pt\texttt{(1,1)}}}
\put(3,3){{\color{red}\circle*{0.25}}\hbox{\kern3pt\texttt{(3,3)}}}
\put(4,4){{\color{black}\circle*{0.25}}\hbox{\kern3pt\texttt{(4,4)}}}
\end{picture}}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+2\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Csetlength%7B%5Cfboxsep%7D%7B0pt%7D%0A%0AThis+is+my+picture%5Cfbox%7B%25%0A%5Cbegin%7Bpicture%7D%283%2C3%29%281%2C1%29%0A%5Cput%280%2C0%29%7B%7B%5Ccolor%7Bblue%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%280%2C0%29%7D%7D%7D%0A%5Cput%281%2C1%29%7B%7B%5Ccolor%7Borange%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%281%2C1%29%7D%7D%7D%0A%5Cput%283%2C3%29%7B%7B%5Ccolor%7Bred%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%283%2C3%29%7D%7D%7D%0A%5Cput%284%2C4%29%7B%7B%5Ccolor%7Bblack%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%284%2C4%29%7D%7D%7D%0A%5Cend%7Bpicture%7D%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![dimensioner af LaTeX picture-miljøet](/files/58dfa636a86a44339027627fe34bfe1c6b35b1e6)

Det andet eksempel viser virkningerne af at forskyde origoen og fremhæver nogle vigtige punkter:

* rammen oprettet af `\fbox` viser, at grafikkens afgrænsningsramme, boksens bredde og højde oprettet af LaTeX, er *upåvirket* af at forskyde origoen: den bestemmes stadig af `(bredde,højde)` værdierne angivet til `\begin{picture}(3,3)(1,1)`
  * billedbredde = `width` × `\unitlength` = 3 × 1cm = 3cm
  * billedhøjde = `højde` × `\unitlength` = 3 × 1cm = 3cm
* tegningsdelene er ikke begrænset (klippet) til det område (afgrænsningsrammens dimensioner), som LaTeX opretter. For eksempel er den blå prik og `(0,0)` koordinaten tegnet uden for den grænselinje, der er produceret af `\fbox`, hvilket angiver afgrænsningsrammen.
  * Det er brugerens ansvar at sikre, at tegningsdelene forbliver inden for afgrænsningsrammen og ikke lægger sig over nogen omgivende tekst.
* origoen, `(0,0)`, er *ikke længere* placeret umiddelbart efter teksten “This is my picture”, på det punkt hvor `\begin{picture}` kommandoen blev udført: origoen er nu forskudt 1 enhed til venstre og 1 enhed nedad
* det øverste højre hjørne er nu ved positionen `(4,4)`

## Eksempler på picture-miljøet

### Eksempler fra den uofficielle LaTeX2e-referencehåndbog

Den [LaTeX2e uofficielle referencehåndbog](https://latexref.xyz/picture.html) indeholder en række `picture` eksempler på miljøet, hvoraf nogle gengives her sammen med links, som åbner dem i Overleaf, så du kan redigere og udforske koden.

#### Eksempel 1: \vector-kommandoen

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(6,6)      % billedboksen vil være 6cm bred og 6cm høj
  \put(0,0){\vector(2,1){4}}  % for hver 2 henad går denne vektor 1 op
    \put(2,1){\makebox(0,0)[l]{\ first leg}}
  \put(4,2){\vector(1,2){2}}
    \put(5,4){\makebox(0,0)[l]{\ second leg}}
  \put(0,0){\vector(1,1){6}}
    \put(3,3){\makebox(0,0)[r]{sum\ }}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cbegin%7Bpicture%7D%286%2C6%29++++++%25+picture+box+will+be+6cm+wide+by+6cm+tall%0A++%5Cput%280%2C0%29%7B%5Cvector%282%2C1%29%7B4%7D%7D++%25+for+every+2+over+this+vector+goes+1+up%0A++++%5Cput%282%2C1%29%7B%5Cmakebox%280%2C0%29%5Bl%5D%7B%5C+first+leg%7D%7D%0A++%5Cput%284%2C2%29%7B%5Cvector%281%2C2%29%7B2%7D%7D%0A++++%5Cput%285%2C4%29%7B%5Cmakebox%280%2C0%29%5Bl%5D%7B%5C+second+leg%7D%7D++%0A++%5Cput%280%2C0%29%7B%5Cvector%281%2C1%29%7B6%7D%7D%0A++++%5Cput%283%2C3%29%7B%5Cmakebox%280%2C0%29%5Br%5D%7Bsum%5C+%7D%7D++%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![eksempel på picture-miljøet](/files/fcab4888b414d84137fae828f11621c472e0b067)

#### Eksempel 2: kommandoerne \qbezier, \line, \vector, \thinlines og \thicklines

Bemærk, hvordan `\qbezier` kommandoen *ikke* bruges inde i `\put{...}` hvorimod andre primitive kommandoer, såsom `\line`, `\vector` *er* bruges inde i `\put{...}`.

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(8,4)
  \thinlines % Start med tynde linjer
  \put(0,0){\vector(1,0){8}}  % x-akse
  \put(0,0){\vector(0,1){4}}  % y-akse
  \put(2,0){\line(0,1){3}}    % venstre side
  \put(4,0){\line(0,1){3.5}}  % højre side
  \thicklines % Brug tykkere linjer til \qbezier-kommandoerne
  \qbezier(2,3)(2.5,2.9)(3,3.25)
  \qbezier(3,3.25)(3.5,3.6)(4,3.5)
  \thinlines % Tilbage til at bruge tynde linjer
  \put(2,3){\line(4,1){2}}
  \put(4.5,2.5){\framebox{Trapezreglen}}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=qbezier+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cbegin%7Bpicture%7D%288%2C4%29%0A++%5Cthinlines+%25+Start+with+thin+lines%0A++%5Cput%280%2C0%29%7B%5Cvector%281%2C0%29%7B8%7D%7D++%25+x+axis%0A++%5Cput%280%2C0%29%7B%5Cvector%280%2C1%29%7B4%7D%7D++%25+y+axis%0A++%5Cput%282%2C0%29%7B%5Cline%280%2C1%29%7B3%7D%7D++++%25+left+side%0A++%5Cput%284%2C0%29%7B%5Cline%280%2C1%29%7B3.5%7D%7D++%25+right+side%0A++%5Cthicklines+%25+Use+thicker+lines+for+the+%5Cqbezier+commands%0A++%5Cqbezier%282%2C3%29%282.5%2C2.9%29%283%2C3.25%29%0A++%5Cqbezier%283%2C3.25%29%283.5%2C3.6%29%284%2C3.5%29%0A++%5Cthinlines+%25+Back+to+using+thin+lines%0A++%5Cput%282%2C3%29%7B%5Cline%284%2C1%29%7B2%7D%7D%0A++%5Cput%284.5%2C2.5%29%7B%5Cframebox%7BTrapezoidal+Rule%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![Eksempel på LaTeX picture-miljøet](/files/f4959862889c191c235a3601774e9a32be661f48)

#### Eksempel 3: kommandoerne \multiput og \linethickness

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\thicklines
\begin{picture}(10,10)
  \linethickness{0.05mm}
  \multiput(0,0)(1,0){10}{\line(0,1){10}}
  \multiput(0,0)(0,1){10}{\line(1,0){10}}
  \linethickness{0.5mm}
  \multiput(0,0)(5,0){3}{\line(0,1){10}}
  \multiput(0,0)(0,5){3}{\line(1,0){10}}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=multiput+command+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cthicklines%0A%5Cbegin%7Bpicture%7D%2810%2C10%29%0A++%5Clinethickness%7B0.05mm%7D%0A++%5Cmultiput%280%2C0%29%281%2C0%29%7B10%7D%7B%5Cline%280%2C1%29%7B10%7D%7D+%0A++%5Cmultiput%280%2C0%29%280%2C1%29%7B10%7D%7B%5Cline%281%2C0%29%7B10%7D%7D%0A++%5Clinethickness%7B0.5mm%7D%0A++%5Cmultiput%280%2C0%29%285%2C0%29%7B3%7D%7B%5Cline%280%2C1%29%7B10%7D%7D%0A++%5Cmultiput%280%2C0%29%280%2C5%29%7B3%7D%7B%5Cline%281%2C0%29%7B10%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![Eksempel på \multiput-kommandoen i LaTeX picture-miljøet](/files/49e1a452ae0271dbfa116760e88ae7ed0c5c2e0a)

### Andre eksempler

#### En grundlæggende Bézier-kurve

Følgende eksempel bruger `\qbezier` kommandoen til at tegne en Bézier-kurve:

```latex
\qbezier(1,1)(5,5)(9,0.5)
```

Bemærk følgende:

* den `\qbezier` kommandoen bruges ikke inde i et `\put` kommandoen
* Bézier-kurvens startpunkt er `(1,1)`
* Bézier-kurvens slutpunkt er `(9,0.5)`
* Bézier-kurvens kontrolpunkt er `(5,5)`
* vi bruger ikke det valgfrie heltal, som bestemmer antallet af punkter, der bruges til at tegne/producere Bézier-kurven

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.8cm}
\begin{picture}(10,5)
\thicklines
\qbezier(1,1)(5,5)(9,0.5)
\put(2,1){{Bézier curve}}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=multiput+command+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.8cm%7D%0A%5Cbegin%7Bpicture%7D%2810%2C5%29%0A%5Cthicklines%0A%5Cqbezier%281%2C1%29%285%2C5%29%289%2C0.5%29%0A%5Cput%282%2C1%29%7B%7BB%C3%A9zier+curve%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![Tegning af en Bézier-kurve med LaTeX](/files/d4ae0450cde619a6bc04da74097cd4fcbf2b2c43)

#### Ovaler, linjer og cirkler

Følgende eksempel demonstrerer `\line`, `\circle` og `\oval` kommandoerne og—bemærk, hvordan de *er* alle bruges inde i `\put{...}` kommandoen:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\thicklines
\begin{picture}(10,6)
\put(2,2.2){\line(1,0){6}}
\put(2,2.2){\circle{2}}
\put(6,2.2){\oval(4,2)[r]}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cthicklines%0A%5Cbegin%7Bpicture%7D%2810%2C6%29%0A%5Cput%282%2C2.2%29%7B%5Cline%281%2C0%29%7B6%7D%7D%0A%5Cput%282%2C2.2%29%7B%5Ccircle%7B2%7D%7D%0A%5Cput%286%2C2.2%29%7B%5Coval%284%2C2%29%5Br%5D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![eksempel på LaTeX picture-miljøet](/files/48d1f63a951ef474ca38e0959b0e0f2d3e46bfd4)

Nedenfor er en beskrivelse af kommandoerne:

* `\put(2,2.2){\line(1,0){6}}`: tegner en linje `6` enheder lang ved hjælp af “retningsvektoren” `(1,0)`
* `\put(6,2.2){\oval(4,2)[r]}`: tegner en oval centreret i punktet `(4,2)`. Parameteren `[r]` er valgfri, du kan bruge `r`, `l`, `t` og `b` til at vise ovalens højre, venstre, øverste eller nederste del.
* `\put(2,2.2){\circle{2}}`: tegner en cirkel centreret i punktet `(2,2.2)` og hvis diameter er `2`.

#### Kombinering af linjer, cirkler og tekst

Forskellige grundlæggende elementer kan kombineres for at skabe mere komplekse billeder. I dette eksempel kombineres flere linjer og cirkler for at skabe et billede sammen med tekst til at mærke punkterne:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.8cm}
\begin{picture}(12,4)
\thicklines
\put(8,3.3){{\footnotesize $3$-simplex}}
\put(9,3){\circle*{0.1}}
\put(8.3,2.9){$a_2$}
\put(8,1){\circle*{0.1}}
\put(7.7,0.5){$a_0$}
\put(10,1){\circle*{0.1}}
\put(9.7,0.5){$a_1$}
\put(11,1.66){\circle*{0.1}}
\put(11.1,1.5){$a_3$}
\put(9,3){\line(3,-2){2}}
\put(10,1){\line(3,2){1}}
\put(8,1){\line(1,0){2}}
\put(8,1){\line(1,2){1}}
\put(10,1){\line(-1,2){1}}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.8cm%7D%0A%5Cbegin%7Bpicture%7D%2812%2C4%29%0A%5Cthicklines%0A%5Cput%288%2C3.3%29%7B%7B%5Cfootnotesize+%243%24-simplex%7D%7D%0A%5Cput%289%2C3%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%288.3%2C2.9%29%7B%24a_2%24%7D%0A%5Cput%288%2C1%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%287.7%2C0.5%29%7B%24a_0%24%7D%0A%5Cput%2810%2C1%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%289.7%2C0.5%29%7B%24a_1%24%7D%0A%5Cput%2811%2C1.66%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%2811.1%2C1.5%29%7B%24a_3%24%7D%0A%5Cput%289%2C3%29%7B%5Cline%283%2C-2%29%7B2%7D%7D%0A%5Cput%2810%2C1%29%7B%5Cline%283%2C2%29%7B1%7D%7D%0A%5Cput%288%2C1%29%7B%5Cline%281%2C0%29%7B2%7D%7D%0A%5Cput%288%2C1%29%7B%5Cline%281%2C2%29%7B1%7D%7D%0A%5Cput%2810%2C1%29%7B%5Cline%28-1%2C2%29%7B1%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![eksempel på LaTeX picture-miljøet](/files/ffa7bae691655b4479b8fbe65208c31b17b06c11)

Her er et sammendrag af nogle anvendte kommandoer:

* `\thicklines`: dette øger linjernes tykkelse. Kommandoen `\thinlines` har den modsatte effekt.
* `\put(8,3.3){{\footnotesize $3$-simplex}}`: teksten “3-simplex” indsættes ved punktet `(8,3.3)`, skriftstørrelsen sættes til `\footnotesize`. Den samme kommando bruges til at mærke hvert punkt.
* `\put(9,3){\circle*{0.1}}`: dette tegner en udfyldt cirkel, centreret ved `(9,3)` med en lille diameter på `0.1` (tegningsenhed), så den kan bruges som et punkt.
* `\put(10,1){\line(3,2){1}}`: opretter en ret linje, der starter ved `(10,1)` og tegnes i retningen af `(3,2)` med en længde på 1 (tegningsenhed).

#### Brug af pile

Pile kan også bruges inde i et `picture` miljø, så her er et andet eksempel:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.20mm}
\begin{picture}(400,250)
\put(75,10){\line(1,0){130}}
\put(75,50){\line(1,0){130}}
\put(75,200){\line(1,0){130}}
\put(120,200){\vector(0,-1){150}}
\put(190,200){\vector(0,-1){190}}
\put(97,120){$\alpha$}
\put(170,120){$\beta$}
\put(220,195){øverste tilstand}
\put(220,45){nederste tilstand 1}
\put(220,5){nederste tilstand 2}
\end{picture}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+arrows+in+LaTeX+picture+environment\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.20mm%7D%0A%5Cbegin%7Bpicture%7D%28400%2C250%29%0A%5Cput%2875%2C10%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%2875%2C50%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%2875%2C200%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%28120%2C200%29%7B%5Cvector%280%2C-1%29%7B150%7D%7D%0A%5Cput%28190%2C200%29%7B%5Cvector%280%2C-1%29%7B190%7D%7D%0A%5Cput%2897%2C120%29%7B%24%5Calpha%24%7D%0A%5Cput%28170%2C120%29%7B%24%5Cbeta%24%7D%0A%5Cput%28220%2C195%29%7Bupper+state%7D%0A%5Cput%28220%2C45%29%7Blower+state+1%7D%0A%5Cput%28220%2C5%29%7Blower+state+2%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Dette eksempel giver følgende output:

![Eksempel på pile i LaTeX picture-miljøet](/files/1145e1a3493198d3c53e721fe12adc15a8076a69)

Den `\vector` kommandoen bruger den samme syntaks som `\line`:

* `\put(120,200){\vector(0,-1){150}}`: tegner en vektor, hvis startpunkt er `(120,200)`, længden er `150` og tegningsretningen er `(0,-1)`.

## Yderligere læsning

For mere information se følgende ressourcer:

* [LaTeX2e uofficielle referencehåndbog](https://latexref.xyz/picture.html)
* [Den ikke helt så korte introduktion til LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (se kapitel 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [spørgsmål tagget `picture-mode` på tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` pakkedokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)
* [TikZ-pakken](/latex/da/figurer-og-tabeller/05-tikz-package.md)
* [Pgfplots-pakken](/latex/da/fag-specifikt/08-pgfplots-package.md)
* [Placering af billeder og tabeller](/latex/da/figurer-og-tabeller/02-positioning-images-and-tables.md)
* [Lister over tabeller og figurer](/latex/da/figurer-og-tabeller/03-lists-of-tables-and-figures.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/da/figurer-og-tabeller/04-picture-environment.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
