Rita matematiska funktioner i LaTeX med pgfplots och TikZ.
Du kan rita rena, vektorbaserade grafer direkt i ditt dokument med paketet pgfplots eller ren TikZ. Definiera din domän, ställ in antal samplingspunkter och formatera dina axlar utan att behöva exportera bilder från externa verktyg.
Det korta svaret: ladda \usepackage{pgfplots}, omslut din graf i en axis-miljö och använd \addplot med ett matematiskt uttryck och en domän.
Varför pgfplots är bättre än ren TikZ för funktioner
PGF-manualen beskriver hur man ritar grafer med den grundläggande \path-operationen, men det tvingar dig att rita varje rutnät, etikett och skalstreck för hand. Paketet pgfplots bygger vidare på TikZ för att automatiskt hantera axlar, skalstreck, domäner och teckenförklaringar.
Genom att använda pgfplots håller du teckenstorlekar konsekventa med resten av dokumentet, undviker skalningsproblem när dokumentlayouten ändras och får tillgång till en bekant axis-miljö.
Rita en enkel funktion från ett uttryck
För att rita en funktion, ladda paketet pgfplots i din preamble, skapa en tikzpicture-miljö och infoga en axis-miljö. Inuti axeln använder du \addplot med ett domän-alternativ för att ange ditt indataområde.
Kom ihåg att trigonometriska funktioner i PGF förväntar sig grader som standard. Om din variabel är i radianer, konvertera den med {deg(x)} eller ladda radianer explicit.
Steg-för-steg-exempel med anpassade axlar och formatering
Fixa kantiga kurvor med samples och smooth
Som standard utvärderar pgfplots 25 samplingspunkter över din domän, vilket gör att kurvor ser kantiga och hackiga ut. Öka antalet samplingspunkter och lägg till alternativet smooth för att interpolera mellan punkterna för ett jämnt utseende.
Felsökning av vanliga plot-fel
Odefinierad kontrollsekvens i matematiskt uttryck
Om kompilatorn klagar på ett okänt funktionsnamn, kontrollera din syntax. PGF använder \sin och \cos, men trigonometriska argument behöver konverteras till grader om du inte konfigurerar radianer explicit.
\addplot[domain=0:360] {sin(x)};Tidsgräns vid kompilering av komplexa funktioner
En funktion med tusentals samplingspunkter eller tunga trigonometriska beräkningar kan nå tidsgränser på långsammare online-redigerare. Texeno kompilerar de flesta dokument på 1 till 3 sekunder och tillåter upp till 8 minuter på betalplaner utan kompileringskvot.
Oväntade asymptoter eller vertikala spikar
Funktioner som \tan(x) har vertikala asymptoter där värdena går mot oändligheten, vilket skapar fula horisontella linjer över din graf. Dela upp din domän i intervall kring singulariteterna istället för att rita över dem i en enda kontinuerlig körning.
Frågor
Bör jag använda TikZ eller pgfplots för funktionsgrafer?
Använd pgfplots. Det hanterar axelstreck, etiketter, skalning och ramar automatiskt, medan ren TikZ kräver att du ritar varje rutnät och koordinat för hand.
Hur fixar jag hackiga eller kantiga kurvor i min graf?
Lägg till samples=200 och alternativet smooth till ditt \addplot-kommando. Detta ökar punkttätheten och interpolerar en mjuk kurva mellan dem.
Hur ritar jag trigonometriska funktioner i radianer istället för grader?
Omslut din variabel i deg(x) inuti trigonometriska funktioner, till exempel sin(deg(x)), eftersom PGF utvärderar vinkelargument i grader som standard.
Kan jag rita data från en extern CSV- eller datafil?
Ja. Använd \addplot table {data.file} eller \addplot file {data.dat} för att läsa koordinater direkt från en extern textfil utan att hårdkoda punkter i din LaTeX-källkod.
Hur lägger jag till flera funktioner i samma graf?
Placera flera \addplot-kommandon inuti samma axis-miljö och använd sedan \legend{Funktion A, Funktion B} direkt efter din sista plot.
Vad orsakar tidsgränser vid kompilering av funktioner?
Högt antal samplingspunkter och komplexa numeriska utvärderingar kan överskrida strikta tidsgränser på gratisplaner. Texeno tillhandahåller 30 sekunder på gratisplanen och 8 minuter på betalplaner utan någon månatlig kompileringskvot.
Prova din egen artikel i Texeno.
Börja gratis, ladda upp ett projekt som .zip och tryck på Kompilera om. Uppgradera när du behöver längre kompileringar.
Börja skriva