Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

How do you draw functions that look like this? I apologize for not providing you with an attempt to solve this problem - I am a second-day user of Latex. Greatly appreciate your help.

\documentclass[paper=a4, fontsize=11pt]{scrartcl} 
\usepackage[T1]{fontenc} % Use 8-bit encoding that has 256 glyphs
\usepackage{fourier} % Use the Adobe Utopia font for the document - comment this line to return to the LaTeX default
\usepackage[english]{babel} % English language/hyphenation
\usepackage{amsmath,amsfonts,amsthm} % Math packages
\usepackage{sectsty} % Allows customizing section commands
\allsectionsfont{\centering \normalfont\scshape} % Make all sections centered, the default font and small caps

\usepackage{fancyhdr} % Custom headers and footers
\usepackage{xfrac}


\begin{document}
\[ F_x(x) = \left\{ 
  \begin{array}{l l}
    0 & \quad \text{for $x <0$}\\
    x^2 & \quad \text{$0\leq x<0.5$}\\
    1-3(1-x)^2 & \quad \text{$0.5\leq x<1$}\\
    1 & \quad \text{$x\geq 1$}
  \end{array} \right.\]
  \\

\end{document}
share|improve this question
    
You mean you want to plot it? Something like tex.stackexchange.com/questions/132476/…? –  Torbjørn T. Aug 29 at 13:06
    
Yes, this is correct. Plotting a function that has multiple arguments, I guess (?). –  Olga Aug 29 at 13:12
    
You can use something like pgfplots as the above comment shows but alternatively (and more commonly) you can plot the graph in whatever plotting software you are used to (gnuplot, excel, matlab, ....) and include the resulting image using \includegraphics –  David Carlisle Aug 29 at 13:13
2  
But plots produced by matlab and excel are ugly. –  JPi Aug 29 at 13:21

2 Answers 2

up vote 7 down vote accepted
\documentclass{article} 

\usepackage{amsmath}
\usepackage{pgfplots}

\begin{document}
\[ F_x(x) = 
  \begin{cases}
    0 & \quad \text{for $x <0$}\\
    x^2 & \quad \text{$0\leq x<0.5$}\\
    1-3(1-x)^2 & \quad \text{$0.5\leq x<1$}\\
    1 & \quad \text{$x\geq 1$}
  \end{cases}
  \]

\begin{tikzpicture}
\begin{axis}
\addplot[smooth,samples=200,domain=-2:0]{0};
\addplot[smooth,samples=200,domain=0:0.5]{x^2};
\addplot[smooth,samples=200,domain=0.5:1]{1-3*(1-x)^2};
\addplot[smooth,samples=200,domain=1:2]{1};
\end{axis}
\end{tikzpicture}
\end{document}

Edited:

Implementing the change suggested by the OP works fine for me:

\documentclass{article} 

\usepackage{amsmath}
\usepackage{pgfplots}

\begin{document}
\[ F_x(x) = 
  \begin{cases}
    0 & \quad \text{for $x <0$}\\
    2x & \quad \text{$0\leq x<0.5$}\\
    6-6x & \quad \text{$0.5\leq x<1$}\\
    1 & \quad \text{$x\geq 1$}
  \end{cases}
  \]

\begin{tikzpicture}
\begin{axis}
\addplot[smooth,samples=200,domain=-2:0]{0};
\addplot[smooth,samples=200,domain=0:0.5]{2*x};
\addplot[smooth,samples=200,domain=0.5:1]{6-6*x};
\addplot[smooth,samples=200,domain=1:2]{1};
\end{axis}
\end{tikzpicture}
\end{document}

Edited again to create red lines and dots, as per request:

\documentclass{article} 

\usepackage[svgnames]{xcolor}
\usepackage{amsmath}
\usepackage{pgfplots}

\begin{document}
\[ F_x(x) = 
  \begin{cases}
    0 & \quad \text{for $x <0$}\\
    x^2 & \quad \text{$0\leq x<0.5$}\\
    1-3(1-x)^2 & \quad \text{$0.5\leq x<1$}\\
    1 & \quad \text{$x\geq 1$}
  \end{cases}
  \]

\begin{tikzpicture}
\begin{axis}
\addplot[Red,smooth,samples=200,domain=-2:0]{0};
\addplot[Red,smooth,samples=200,domain=0:0.5]{x^2};
\addplot[Red,smooth,samples=200,domain=0.5:1]{1-3*(1-x)^2};
\addplot[Red,smooth,samples=200,domain=1:2]{1};
\fill[Red] (axis cs:0,0) circle(0.5mm) (axis cs:0.5,0.25) circle(0.5mm) (axis cs:1,1) circle(0.5mm);
\end{axis}
\end{tikzpicture}
\end{document}
share|improve this answer
1  
Not that I am easily impressed...WOW, the graph looks impressive. I will use it as a template for other similar graphs. –  Olga Aug 29 at 13:34
    
P.S. How do you make this graph thicker? –  Olga Aug 29 at 13:40
    
Put very thick, before smooth –  JPi Aug 29 at 13:44
    
Hey! Thanks again. I tried plotting a different graph by using your template but it didn't work. It was quite strange because I only changed 2 things: x^2 became 2x, and 1-3(1-x)^2 became 6-6x. As you can tell, these are the derivatives. Any suggestions please? –  Olga Aug 29 at 17:30
    
Hmm. I'll have a look tomorrow. –  JPi Aug 30 at 0:51

The pstricks way. It can be compiled with pdflatex if you launch it with the --enable-write18 (MiKTeX) or --shell-escape (TeXLive, MacTeX) switch:

\documentclass[11pt, a4paper, svgnames, pdf]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{nccmath}
\usepackage{lmodern}

\usepackage{pst-plot}

\begin{document}

\psset{unit=4cm, linewidth = 0.6pt,  ticksize = -2pt 2pt}
\begin{pspicture*}(-1.6,-0.9)(1.9,1.6)
\psaxes{->}(0,0)(-1.6,-0.9)(1.9,1.6)[ $ x $, -135][ $ y $,-135]%
\uput[d](-0.05,0){0}
{\psset{linestyle = dashed,, linecolor = LightSteelBlue}
\psline(0, 0.25)(0.5, 0.25)(0.5, 0)\uput[d](0.5,0){ $ \mfrac{1}{2} $}\uput[l](0, 0.25){ $ \mfrac{1}{4} $}
\psline(0,1)(1,1)(1,0)}
\psset{linewidth = 1.5pt, linecolor =IndianRed ,plotpoints=50,plotstyle=curve, algebraic, labelsep = 0.5em}
\psline(-1.6,0)(0,0)
\psplot{0}{0.5}{x^2}
\psplot{0.5}{1}{1-3*(1-x)^2}
\psline(1,1)(2,1)
\psdots[dotsize = 3pt](0,0)(0.5, 0.25)(1,1)
\end{pspicture*}

\end{document}

enter image description here

share|improve this answer
    
Thanks, the graph is beautiful. I tried it, but the code isn't working for me. –  Olga Aug 29 at 14:50
    
Do you have any error message? You can compile with pdflatex, although it's based on pstricks (pdf option in \documentclass). I think I forgot you must set the compiler with the --shell-escape switch. –  Bernard Aug 29 at 15:53
    
That's right, I had an error message. How do you set the compiler with the --shell-escape switch? –  Olga Aug 29 at 17:31
    
That depends on your editor… Which one do you use? –  Bernard Aug 29 at 18:22
    
I use TexShop for Mac. Thank you. –  Olga Aug 29 at 18:41

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.