Program for fritegning av grafer i Latex

Her kan du stille spørsmål vedrørende problemer og oppgaver i matematikk på høyskolenivå. Alle som har kunnskapen er velkommen med et svar. Men, ikke forvent at admin i matematikk.net er spesielt aktive her.

Moderatorer: Vektormannen, espen180, Aleks855, Solar Plexsus, Gustav, Nebuchadnezzar, Janhaa

Svar
Byremo
Noether
Noether
Innlegg: 27
Registrert: 01/07-2012 14:27

Hei...

Er på leting etter ett program som gjør det mulig å fritegne kurver osv i diagrammer uten at det blir for tungvint. Er helt ny på Latex. Har installert Miktex og Texniccenter og koblet det opp mot adobe reader. Har brukt pakken Tikz, men det blir liksom selve definisjonen på tungvint, særlig hvis man skal ha flere kurver i samme diagram, eller ha med tangenter osv. Noen som har noen erfaringer rundt dette?

Ett annet spørsmål dreier seg om opprettelsen av et prosjekt i Texniccenter. Har opprettet et prosjekt, men klarer ikke å slette det/opprette ett nytt... :oops: Hvordan går man frem?

Ellers tas andre triks og tips imot med åpne armer... :)
Nebuchadnezzar
Fibonacci
Fibonacci
Innlegg: 5648
Registrert: 24/05-2009 14:16
Sted: NTNU

Jeg har brukt latex litt... Eksempelvis

https://www.dropbox.com/s/pro0s1fq3tego1g/T1%20V12.pdf

Men jeg foretrekker TexMaker langt over de fleste andre verktøy, og jeg har prøvd et par.

Og jeg har og stilt mange dumme spørsmål angående tegning av figurer, eksempelvis her

http://tex.stackexchange.com/users/8306 ... =questions

For å svare på spørsmålet ditt. Ja, det er fullt mulig å tegne ting på frihånd å legge dette inn senere, men ikke gjør det!!! ABSOLUTT IKKE

For det første vil det se langt mindre pent ut, og eventuelle forandringer du vil gjøre senere vil være svært tungvindt.

Under er hva jeg bruker og hvordan jeg gjør det

PGF-Plots: For tegning av funksjoner ol, les manualen!

http://ctan.uib.no/graphics/pgf/contrib ... fplots.pdf

Husk å legge til

Kode: Velg alt

\usepackage{pgfplots}
"Malen" jeg bruker for funksjoner og plot ser ca sånn ut

Kode: Velg alt

\begin{figure}[h!tbp] % Definerer hvor en ønsker figuren
\begin{tikzpicture}
\begin{axis}[
    scale only axis,
    grid=major, 
    grid style={dashed, gray!30}, % Grå tynne bakgrunnslinjer
    axis lines=middle, % akser i midten
    inner axis line style={=>},
    xlabel={\large $x$},
    ylabel={\large $y$},
    yticklabel style={inner ysep=0pt, anchor=south east},
    ytick={0,1,...,11}, %Hvor langt tallene langs y-aksen skal gå
    xticklabel style={inner xsep=0pt, anchor=north west},
    xtick={-3,-2,...,7}, %Hvor langt tallene langs x-aksen skal gå
    ymin=-1.25, 
    ymax= 10.25,
    xmin=-2.5,
    xmax= 6.5,
    after end axis/.code={
        \path (axis cs:0,0) 
            node [anchor=north west,yshift=-0.075cm] {0}
            node [anchor=south east,xshift=-0.075cm] {0};
    } % Denne delen er bare til for å fikse 0 og 0
]
\addplot[color=blue, thick,domain=2.2:5,samples=50] {(-x^2/3+8*x-14)/(x-2)}; % Legger til plottene, samples gir hvor mange punkt figuren består av
\addplot[color=blue, thick,domain=-3:1.9,samples=50] {(-x^2/3+8*x-14)/(x-2)};
\addplot[color=black, thick,domain=-3:5,samples=50] {x^3/3-x^2+7};
\addplot[color=red,thick] coordinates {(-2,0) (0,7) (3,7) (5,0)};
\end{axis}
\end{tikzpicture}
\caption{Funksjoner som har stigningstall $0$ mellom $x=0$ og $x=3$} % caption gir oss figurteksten under bildet.
\label{fig2b} % Gjør at vi senere kan referere til figuren.
\end{figure}
Bilde

Tkz-Euclide: En avart av tikz, brukes til å tegne geometriske figurer og konstruksjoner.

Husk å legge til

Kode: Velg alt

\usepackage{tikz-euclide}
\usetkzobj{all}
Et veldig enkelt eksempel her.

Kode: Velg alt

\begin{tikzpicture}[scale=0.5]
\def\h{5} \def\l{12}
    \tkzDefPoint(0,0){C}    \tkzLabelPoint[below left ](C){$C$}
    \tkzDefPoint(\l,0){A}   \tkzLabelPoint[below right](A){$A$}
    \tkzDefPoint(\l,\h){B}  \tkzLabelPoint[above right](B){$B$}
    \tkzMarkAngle[scale=1.25](A,C,B)
    \tkzLabelSegment[right=0.1](A,B){$\h$} \tkzLabelSegment[below=0.1](C,A){$\l$}
    \tkzDrawPolygon(A,B,C)
\end{tikzpicture}
Bilde

Lurer du på noe er http://tex.stackexchange.com en fabelaktig side å spørre på. Men husk å lete før du spør. Gode råd er ikke å tenke på utseende til dokumentet ditt, men bare å skrive. Alt for mange tenker for mye på paragrafer, marginer, osv som er helt uviktig.

Og min minimale "must have" i preamblen (hva er et godt ord for dette på norsk?) ser slik ut

Kode: Velg alt

\usepackage{microtype,lmodern,fixltx2e}      % Småfikser og typografiske forbedringer
\usepackage{amsfonts,amssymb,mathtools}      % Matematikk.
\usepackage[utf8]{inputenc}                  % Norske symboler æ,ø,å
\usepackage[norsk]{babel}                    % Norsk innholdsfortegnelse, og overskrifter
\usepackage{booktabs} % Penere tabeller og figurer
\usepackage{enumitem}                        % Mer muligheter for lister
"Å vite hva man ikke vet er og en slags allvitenhet" - Piet Hein
https://s.ntnu.no/Integralkokeboken
Lektor - Matematikk, Fysikk og Informatikk
Gommle
Grothendieck
Grothendieck
Innlegg: 857
Registrert: 21/05-2007 20:05

Jeg gjør det enkelt, bruker GeoGebra og eksporterer til eps, som kan brukes direkte i LaTeX. Om du bruker pdflatex må du konvertere figurene til pdf ved å bruke verktøyet epstopdf, som følger med MikTeX.

Om du bruker Linux, eller Cygwin, kan du bruke denne makefile-en til å konvertere alle eps-filene i mappen figurer til pdf-filer.

Kode: Velg alt

all:
	pdflatex rapport.tex
pdf:
	for f in figurer/*eps; do epstopdf "$$f"; done

clean:
	rm *.aux
	rm *.log
Da kjører du make pdf for å konverte dem.

For å få en noenlunde standard strektykkelse er det viktig å ha samme størrelse på GeoGebra-vinduet hver gang du eksporterer.

Edit: Det virker som GeoGebra støtter TikZ som output-format også.
Nebuchadnezzar
Fibonacci
Fibonacci
Innlegg: 5648
Registrert: 24/05-2009 14:16
Sted: NTNU

Hvilket verkøy en skal benytte seg av kommer helt ann på hvor mye en skal bruke nevnte verktøy.

Skal en skrive en bursdagsinvitasjon, eller henge opp en savnet kattplakat, skrive èn stil er nok ikke LaTeX det optimale verktøyet. På samme måte er geogebra fint til et mindre antall figurer, men må seg seg slått når det kommer til den kraftige automatiseringen LaTeX kan fikse opp med.
Lager en figur i geogebra tar nok dette lengre tid, en å lage en figur med eksempelvis pgfplots. Skal en derimot lage 20,50 eller 100 figurer må nok Geogebra slå seg slått langt ned i støvlene. Både på tid og hvor gjennomført figurene er. Jeg har selv benyttet meg mye av geogebra, men en må bry seg om alt mulig piss der som en slipper i latex. Jeg bryr meg ikke om fontstørrelsen, fonten eller linjetykkelsen når jeg tegner kurver, jeg bryr meg ikke om oppløsningen, alt dette ordner Latex helt automatisk. Slik at alle figurer blir laget på nøyaktig samme måte. Ja, det tar litt tid å sette seg inn i. Med den automatiseringen som er mulig i latex, overgår ulempene med glans.

En kan og eksempelvis benytte seg av eps

Kode: Velg alt

\usepackage{epstopdf}
Andre fordeler med automatiseringen er at jeg kan gjøre tunge utregninger i Maple/Matlab også direkte putte de numeriske verdiene inn i en tabell og få ut en fin figur.

Men ja Geogebra kan produsere fine figurer langt lettere for en uerfaren bruker. For automatiseringen sin del snakker jeg hovedsakelig om kurver, og slikt.

http://i.imgur.com/UQmCD.png?1

http://i.imgur.com/SeBRu.png

Nyttige ting til matlab

http://win.ua.ac.be/~nschloe/content/matlab2tikz

http://www.tug.org/TUGboat/Articles/tb24-2/tb77seta.pdf
"Å vite hva man ikke vet er og en slags allvitenhet" - Piet Hein
https://s.ntnu.no/Integralkokeboken
Lektor - Matematikk, Fysikk og Informatikk
Byremo
Noether
Noether
Innlegg: 27
Registrert: 01/07-2012 14:27

Kjempebra svar, tusen takk. :D
Har nå forkastet TeXniccenter til fordel for TexMaker.
Skal nå prøve å sette meg litt inn i manualen til PGF-Plots. 8-)
drgz
Fermat
Fermat
Innlegg: 757
Registrert: 24/12-2008 23:22

Notepad++ for å skrive dokumenter er det eneste som gjelder.
drgz
Fermat
Fermat
Innlegg: 757
Registrert: 24/12-2008 23:22

Gommle skrev: Edit: Det virker som GeoGebra støtter TikZ som output-format også.
Som er den eneste outputen du bør tenke på å bruke. :)
Svar