From ed56f9c0b08fdf285ff4843816e8c288a1e6c9c2 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 23 Jul 2018 21:08:11 +0000 Subject: bezierplot (23jul18) git-svn-id: svn://tug.org/texlive/trunk@48259 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/lualatex/bezierplot/README | 2 +- .../doc/lualatex/bezierplot/bezierplot-doc.pdf | Bin 251324 -> 251792 bytes .../doc/lualatex/bezierplot/bezierplot-doc.tex | 38 +++++++++++++++------ 3 files changed, 28 insertions(+), 12 deletions(-) (limited to 'Master/texmf-dist/doc/lualatex') diff --git a/Master/texmf-dist/doc/lualatex/bezierplot/README b/Master/texmf-dist/doc/lualatex/bezierplot/README index 38e4cb3e782..8b004c0a208 100644 --- a/Master/texmf-dist/doc/lualatex/bezierplot/README +++ b/Master/texmf-dist/doc/lualatex/bezierplot/README @@ -8,7 +8,7 @@ points such as extreme points and inflection points and reduces the number of used points. VERSION: -1.1 2018-06-10 +1.2 2018-07-23 LICENSE: The package and the program are distributed on CTAN under the terms of diff --git a/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.pdf b/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.pdf index 84cdd36dd4b..a62218abbf3 100644 Binary files a/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.pdf and b/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.pdf differ diff --git a/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.tex b/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.tex index d9efe21ee8e..680d72dfdbb 100644 --- a/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.tex +++ b/Master/texmf-dist/doc/lualatex/bezierplot/bezierplot-doc.tex @@ -28,9 +28,9 @@ Given a smooth function, \texttt{bezierplot} returns a smooth bezier path writte The following example will show a comparison of \textsc{gnuplot} with \verb|bezierplot| for the function $y=\sqrt{x}$ for $0\leq x \leq 5$: \begin{center} \begin{tikzpicture}[scale=1.4] - \draw (0,0) .. controls (0,0.745) and (1.667,1.491) .. (5,2.236); + \draw (0,0) .. controls (0,0.7454) and (1.6667,1.4907) .. (5,2.2361); \draw (0,0) circle(.02) -- (0,0.745) circle( .02); - \draw (1.667,1.491) circle(.02) -- (5,2.236) circle( .02); + \draw (1.6667,1.4907) circle(.02) -- (5,2.2361) circle( .02); \draw (2.5,.5) node[above]{\verb|bezierplot|}; \begin{scope}[shift={(5.2,0)}] \draw[domain=0:5,samples=51] plot function{x**0.5}; @@ -68,11 +68,11 @@ The \texttt{bezierplot} package is loaded with \verb|\usepackage{bezierplot}|. T \end{center} \end{multicols} \noindent -The command \verb|\bezierplot| has 4 optional arguments in the sense of +The command \verb|\bezierplot| has 6 optional arguments in the sense of \begin{center} - \verb|\bezierplot[XMIN][XMAX][YMIN][YMAX]{FUNCTION}| + \verb|\bezierplot[XMIN][XMAX][YMIN][YMAX][SAMPLES]{FUNCTION}| \end{center} -The defaults are \verb|XMIN| = \verb|YMIN| $= -5$ and \verb|XMAX| = \verb|YMAX| $= 5$. +The defaults are \verb|XMIN| = \verb|YMIN| $= -5$, \verb|XMAX| = \verb|YMAX| $= 5$ and \verb|SAMPLES| $= 0$ (this will set as few samples as possible). \begin{center} \begin{tikzpicture}[scale=.7] \draw \bezierplot[-1][2]{x^2}; @@ -116,17 +116,17 @@ lua bezierplot.lua "3*x^0.8+2" \end{verbatim} will return \begin{verbatim} -(0,2) .. controls (0.03,2.282) and (0.268,3.244) .. (1,5) +(0,2) .. controls (0.0168,2.1905) and (0.2073,3.0978) .. (1.0004,5.001) \end{verbatim} -You can set the window of the graph as follows: +You can set the window of the graph and the number of samples as follows: \begin{verbatim} -lua bezierplot.lua "FUNCTION" XMIN XMAX YMIN YMAX +lua bezierplot.lua "FUNCTION" XMIN XMAX YMIN YMAX SAMPLES \end{verbatim} e.g. \begin{verbatim} -lua bezierplot.lua "FUNCTION" 0 1 -3 2.5 +lua bezierplot.lua "FUNCTION" 0 1 -3 2.5 201 \end{verbatim} -will set $0\leq x\leq 1$ and $-3\leq y\leq 2.5$. You may also omit the $y$--range, hence +will set $0\leq x\leq 1$ and $-3\leq y\leq 2.5$ and $201$ equidistant samples. You may also omit the $y$--range, hence \begin{verbatim} lua bezierplot.lua "FUNCTION" 0 1 \end{verbatim} @@ -134,6 +134,18 @@ will set $0\leq x\leq 1$ and leave the default $-5\leq y\leq 5$. The variables \ \begin{verbatim} lua bezierplot.lua "sin(x)" -pi pi \end{verbatim} +You may use \verb|huge| for $\infty$: +\begin{verbatim} +lua bezierplot "1/x" 0 1 0 huge +\end{verbatim} +As \verb|huge| is very huge and \verb|bezierplot| uses recursive calls for nontrivial functions and non--fixed samples, this can last very long: +\begin{verbatim} +lua bezierplot "1/x" -5 5 -huge huge +\end{verbatim} +But if you set fixed samples, it will be fast again (as this does not use recursive calls): +\begin{verbatim} +lua bezierplot "1/x" -5 5 -huge huge 100 +\end{verbatim} \subsection{Notation Of Functions} The function term given to \verb|bezierplot| must contain at most one variable: $x$. E.g. \verb|"2.3*(x-1)^2-3"|. You must not omit \verb|*| operators: \begin{center} @@ -153,15 +165,19 @@ The following functions and constants are possible: \verb|cbrt| & cube root $\sqrt[3]{\quad}$ that works for negative numbers, too\\ \verb|cos| & cosine for angles in radians\\ \verb|exp| & the exponential function $e^{(\;)}$\\ + \verb|huge| & the numerical $\infty$\\ \verb|e| & the euler constant $e=\mathrm{exp}(1)$\\ \verb|log| & the natural logarithm $\mathrm{log}_e(\;)$\\ \verb|pi| & Archimedes’ constant $\pi\approx 3.14$\\ \verb|sgn| & sign function\\ \verb|sin| & sine for angles in radians\\ \verb|sqrt| & square root $\sqrt{\quad}$\\ - \verb|tan| & tangent for angles in radians\\ + \verb|tan| & tangent for angles in radians \end{tabular} \end{center} +% +\newpage +% \section{Examples of \texttt{bezierplot} in Comparison with \textsc{gnuplot}} The following graphs are drawn with \texttt{bezierplot} (black) and \textsc{gnuplot} (red). \textsc{gnuplot} used 1000 samples per example. The functions are given below the pictures (left: bezierplot, right: \textsc{gnuplot}). \begin{multicols}{3} -- cgit v1.2.3