> 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/sv/figurer-och-tabeller/04-picture-environment.md).

# Rita diagram direkt i LaTeX

## Introduktion

LaTeX:s inbyggda `bild` miljön kan användas för att skapa diagram/figurer—du behöver inte *behöva* ladda några externa paket för att använda den, men paket som [`pict2e`](https://ctan.org/pkg/pict2e?lang=en) och [`bild`](https://ctan.org/pkg/picture) har skrivits för att utöka eller förbättra dess funktioner.

Den här artikeln ger en kort introduktion till `bild` miljön och alla exempel använder den [`pict2e` paketet](https://ctan.org/pkg/pict2e?lang=en). Mer omfattande dokumentation och en rad användbara exempel finns lätt tillgängliga i följande resurser:

* [Den inofficiella referensmanualen för LaTeX2e](https://latexref.xyz/picture.html)
* [En inte så kort introduktion till LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (se kapitel 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [frågor taggade med `picture-mode` på tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` paketdokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)

Jämfört med kraftfulla och sofistikerade grafikverktyg 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 `bild` miljön kan verka ganska begränsad men ibland kan den vara tillräcklig för det du behöver göra.

## Skapa en ny bild

Att skapa en ny bild innebär vanligtvis följande steg:

1. definiera storleken på de ritningsenheter du vill använda;
2. deklarera en `bild` miljö som definierar bildens storlek;
3. rita de enskilda grafiska komponenterna med hjälp av `\put`, `\multiput` eller `\qbezier` kommandon.

### Definiera storleken på ritningsenheterna

För att skapa en bild börjar du vanligtvis med att ställa in *ritningsenheterna* med kommandot `\unitlength`, som måste användas utanför en `bild` miljö. Till exempel, om du skriver

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

kommer ritningsenheterna att tolkas som multiplar av 1 cm. Standardenheten är 1 pt.

### Definiera storleken på din bild

Den allmänna formen av `bild` miljön är som följer

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

där

* `width` och `höjd` är värden, i enheter av `\unitlength`, som definierar bildens storlek. LaTeX använder dessa värden för att skapa en ruta vars dimensioner är
  * rutans (bildens) bredd = `width` × `\unitlength`
  * rutans (bildens) höjd = `höjd` × `\unitlength`
* `(Xoffset, Yoffset)` är en valfri koordinat som sätter origo (bildens nedre vänstra hörn), uttryckt som en *förskjutning* i förhållande till standardläget. `Xoffset` och `Yoffset` uttrycks också i enheter som bestäms av det aktuella värdet av `\unitlength`.

Observera att `Xoffset` och `Yoffset` påverkar inte mängden utrymme som LaTeX reserverar; dvs. rutans dimensioner.

#### Förstå bildens dimensioner

Vi ska skapa två bilder, båda med `\setlength{\unitlength}{1cm}` och vardera med en `width` och `höjd` på 3 enheter.

Den första bilden använder standardorigo vid `(0,0)`:

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

den andra bilden förskjuter origo med `(1,1)`:

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

### Rita grafik

Grafik skapas med hjälp av en följd av `\put`, `\multiput`, eller `\qbezier` kommandon som producerar de enskilda ”komponenterna” (eller ”objekten”) av vilka bilden eller illustrationens byggs upp:

* `\put(x, y){*component*}` ritar `*component*` på platsen `(x, y)`.
* `\multiput(x, y)(dx, dy){n}{*component*}` ritar `*component*` `n` gånger: med start vid platsen `(x, y)` och upprepad förskjutning med `(dx, dy)` för att rita om `*component*`.
* `\qbezier[n](x<sub>1</sub>, y<sub>1</sub>)(x, y)(x<sub>2</sub>, y<sub>2</sub>)`: ritar en [kvadratisk Bézierkurva](https://en.wikipedia.org/wiki/B%C3%A9zier_curve#Quadratic_B%C3%A9zier_curves) där:
  * `n` ett valfritt heltal som bestämmer antalet punkter som används för att rita/framställa kurvan
  * `(x<sub>1</sub>, y<sub>1</sub>)` är kurvans startpunkt
  * `(x<sub>2</sub>, y<sub>2</sub>)` är kurvans slutpunkt
  * `(x, y)` betecknar kontrollpunkten för den (kvadratiska) Bézierkurvan

Ett `*component*` är ett grafiskt element som vanligtvis skapas med grafikprimitiver som `\line`, `\oval`, `\circle`, `\vector` och så vidare—se [Den inofficiella referensmanualen för LaTeX2e](https://latexref.xyz/picture.html) eller [En inte så kort introduktion till LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (kapitel 5) för detaljer om de tillgängliga primitiverna.

**Obs**: Paketet [`pict2e` paketet](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf) utvidgar den ursprungliga `bild` miljön för att tillhandahålla flera kommandon för att rita Bézierkurvor: `\bezier`, `\qbezier`, `\cbezier` och `\qbeziermax`.

### Förstå förskjutningen och origo

I följande exempel används `\put` kommandot för att rita färgade punkter som anger nyckelkoordinater (positioner) i grafiken. Båda exemplen använder LaTeX:s `\fbox` kommando för att rita en ram runt rutan som LaTeX skapade för att innehålla vår bild och visa *begränsningsruta* för grafiken.

**Exempel 1: Med standardorigo**

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

Detta är min bild\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}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![dimensionerna för LaTeX:s bildmiljö](/files/8f3c86099bd08db96f2709c50420347971537db0)

Den `\fbox` kommandot ritar en ram runt grafikens begränsningsruta och visar det utrymme (område) som reserverats av LaTeX:

* bildbredd = `width` × `\unitlength` = 3 × 1cm = 3cm.
* bildhöjd = `höjd` × `\unitlength` = 3 × 1cm = 3cm.

Det första exemplet visar att origo, `(0,0)`, är på den punkt där `\begin{picture}` kommandot exekverades, direkt efter texten “This is my picture”. Dessutom ligger det övre högra hörnet i positionen `(3,3)`, den `(width,height)` värden som anges till `\begin{picture}(3,3)`.

**Exempel 2: Förskjuta origo med (1,1)**

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

Detta är min bild\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}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![dimensionerna för LaTeX:s bildmiljö](/files/13f6f8b421e0cdc27a2d8f006b39fd876b7c75b9)

Det andra exemplet visar effekterna av att förskjuta origo och belyser några viktiga punkter:

* ramen som skapas av `\fbox` visar att grafikens begränsningsruta, alltså bredden och höjden på rutan som skapas av LaTeX, är *opåverkad* av att förskjuta origo: den bestäms fortfarande av `(width,height)` värden som anges till `\begin{picture}(3,3)(1,1)`
  * bildbredd = `width` × `\unitlength` = 3 × 1cm = 3cm
  * bildhöjd = `höjd` × `\unitlength` = 3 × 1cm = 3cm
* ritelementen är inte begränsade (klippta) till det område (begränsningsrutans dimensioner) som skapas av LaTeX. Till exempel ritas den blå punkten och `(0,0)` koordinaten utanför gränslinjen som skapas av `\fbox`, vilket anger begränsningsrutan.
  * Det är upp till användaren att se till att ritkomponenterna håller sig inom begränsningsrutan och inte överlappar någon omgivande text.
* origo, `(0,0)`, är *inte längre* placerad direkt efter texten “This is my picture”, vid den punkt då `\begin{picture}` kommandot exekverades: origo är nu förskjuten 1 enhet åt vänster och 1 enhet nedåt
* det övre högra hörnet ligger nu i positionen `(4,4)`

## Exempel på bildmiljön

### Exempel från den inofficiella referensmanualen för LaTeX2e

Den [Den inofficiella referensmanualen för LaTeX2e](https://latexref.xyz/picture.html) innehåller ett antal `bild` miljöexempel, av vilka några återges här tillsammans med länkar som öppnar dem i Overleaf, så att du kan redigera och utforska koden.

#### Exempel 1: kommandot \vector

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(6,6)      % bildrutan blir 6 cm bred och 6 cm hög
  \put(0,0){\vector(2,1){4}}  % för varje 2 steg åt höger går denna vektor 1 upp
    \put(2,1){\makebox(0,0)[l]{\ första benet}}
  \put(4,2){\vector(1,2){2}}
    \put(5,4){\makebox(0,0)[l]{\ andra benet}}
  \put(0,0){\vector(1,1){6}}
    \put(3,3){\makebox(0,0)[r]{summa\ }}
\end{picture}
\end{document}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![exempel på bildmiljön](/files/b6a5b289dc13645ba5f756ebec1e55d44fad0a45)

#### Exempel 2: kommandona \qbezier, \line, \vector, \thinlines och \thicklines

Observera hur `\qbezier` kommandot *inte* används inom `\put{...}` medan andra primitiva kommandon, såsom `\line`, `\vector` *är* används inom `\put{...}`.

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(8,4)
  \thinlines % Börja med tunna linjer
  \put(0,0){\vector(1,0){8}}  % x-axeln
  \put(0,0){\vector(0,1){4}}  % y-axeln
  \put(2,0){\line(0,1){3}}    % vänstra sidan
  \put(4,0){\line(0,1){3.5}}  % högra sidan
  \thicklines % Använd tjockare linjer för kommandona \qbezier
  \qbezier(2,3)(2.5,2.9)(3,3.25)
  \qbezier(3,3.25)(3.5,3.6)(4,3.5)
  \thinlines % Tillbaka till tunna linjer
  \put(2,3){\line(4,1){2}}
  \put(4.5,2.5){\framebox{Trapezoidal Rule}}
\end{picture}
\end{document}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Exempel på LaTeX:s bildmiljö](/files/3017197af74ab9d4b8069c03badf710c7de4f1d7)

#### Exempel 3: kommandona \multiput och \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}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Exempel på kommandot \multiput i LaTeX:s bildmiljö](/files/70c37ec53e0b08d75688ee518062293667f8094e)

### Andra exempel

#### En grundläggande Bézierkurva

Följande exempel använder `\qbezier` kommando för att rita en Bézierkurva:

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

Observera följande:

* den `\qbezier` kommandot används inte inom en `\put` kommandot
* Bézierkurvans startpunkt är `(1,1)`
* Bézierkurvans slutpunkt är `(9,0.5)`
* Bézierkurvans kontrollpunkt är `(5,5)`
* vi använder inte det valfria heltalet som bestämmer antalet punkter som används för att rita/framställa Bézierkurvan

```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ézierkurva}}
\end{picture}
\end{document}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Rita en Bézierkurva med LaTeX](/files/1c8943b818e0d81ff05f46cfd05f9df82c7ed529)

#### Ovaler, linjer och cirklar

Följande exempel visar `\line`, `\circle` och `\oval` kommandona och—observera hur de *är* alla används inom `\put{...}` kommandot:

```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}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Exempel på LaTeX:s bildmiljö](/files/a724ef70bc553458c5b440fe8b96fe330d028566)

Nedan följer en beskrivning av kommandona:

* `\put(2,2.2){\line(1,0){6}}`: ritar en linje `6` enheter lång med hjälp av ”riktningsvektorn” `(1,0)`
* `\put(6,2.2){\oval(4,2)[r]}`: ritar en oval centrerad i punkten `(4,2)`. Parametern `[r]` är valfri, du kan använda `r`, `l`, `t` och `b` för att visa den högra, vänstra, övre eller nedre delen av ovalen.
* `\put(2,2.2){\circle{2}}`: ritar en cirkel centrerad i punkten `(2,2.2)` och vars diameter är `2`.

#### Kombinera linjer, cirklar och text

Olika grundelement kan kombineras för att skapa mer komplexa bilder. I detta exempel kombineras flera linjer och cirklar för att skapa en bild, tillsammans med text för att märka ut punkterna:

```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}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Exempel på LaTeX:s bildmiljö](/files/db1619a5f746438d68a2435d4ce7949bd599b4c2)

Här är en sammanfattning av några använda kommandon:

* `\thicklines`: detta ökar linjernas tjocklek. Kommandot `\thinlines` har motsatt effekt.
* `\put(8,3.3){{\footnotesize $3$-simplex}}`: texten “3-simplex” infogas vid punkten `(8,3.3)`, teckenstorleken sätts till `\footnotesize`. Samma kommando används för att märka ut varje punkt.
* `\put(9,3){\circle*{0.1}}`: detta ritar en fylld cirkel, centrerad vid `(9,3)` med en liten diameter på `0.1` (ritningsenhet) så att den kan användas som en punkt.
* `\put(10,1){\line(3,2){1}}`: skapar en rak linje som börjar vid `(10,1)` och ritas i riktning mot `(3,2)` med längden 1 (ritningsenhet).

#### Använda pilar

Pilar kan också användas inom en `bild` miljö, så här är ett andra exempel:

```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){övre tillstånd
\put(220,45){nedre tillstånd 1}
\put(220,5){nedre tillstånd 2}
\end{picture}
\end{document}
```

[Öppna detta exempel 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)

Det här exemplet ger följande utdata:

![Exempel på pilar i LaTeX:s bildmiljö](/files/823ed76014458a9edb55f878a9973fdd3913e3ad)

Den `\vector` kommandot använder samma syntax som `\line`:

* `\put(120,200){\vector(0,-1){150}}`: ritar en vektor vars startpunkt är `(120,200)`, längden är `150` och riktningen är `(0,-1)`.

## Vidare läsning

För mer information, se följande resurser:

* [Den inofficiella referensmanualen för LaTeX2e](https://latexref.xyz/picture.html)
* [En inte så kort introduktion till LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (se kapitel 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [frågor taggade med `picture-mode` på tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` paketdokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)
* [TikZ-paketet](/latex/sv/figurer-och-tabeller/05-tikz-package.md)
* [Pgfplots-paketet](/latex/sv/faltspecifikt/08-pgfplots-package.md)
* [Placering av bilder och tabeller](/latex/sv/figurer-och-tabeller/02-positioning-images-and-tables.md)
* [Förteckningar över tabeller och figurer](/latex/sv/figurer-och-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/sv/figurer-och-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.
