# PGFPlots with TikZ produces unstable plots

I'm currently trying to get some of my Octave plots to work natively in a LaTeX document. My method of choice is to use the plot parameters of my Octave scripts in a standalone TikZ document that uses PGFPlots and is imported to a larger LaTeX document with some discussion on the results. Unfortunately, there have been some setbacks in my first foray to PGFPlots.

It seems that the plot bears little resemblance to the plot in the Octave script and that the plot is unstable in the sense that its axis offset and its slope change when I adjust the seemingly unrelated axis properties.

Here is the code:

\documentclass[crop,tikz]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=8cm,
height=6cm,
samples=6,
restrict x to domain*=-0.15:0.15,
restrict y to domain*=-0.0004:0.0004,
xmin=-0.05, xmax=0.05,
ymin=-0.0002, ymax=0.0002,
axis lines=left,
grid=both,
]
\end{axis}
\end{tikzpicture}
\end{document}


The plot passes through the origin even if the formula defines offset. Furthermore, adjustment to the x-domain restrictions change the slope of the plot. I worry that there is a feature of PGFPlots that I'm not yet familiar with and which is distorting my plots.

To compare, the following Octave plot has a clear offset from the origin for the corresponding red line.

• Could you add your octave plot for reference, so that we can also try to see the problem? – Raaja_is_at_topanswers.xyz Nov 22 '18 at 12:33
• I'm adding the reference. The red line corresponds to the blue line above. – Tommi Rimpiläinen Nov 22 '18 at 12:50
• You add all the restrictions plot in a huge domain. Try \addplot[domain=-0.05:0.05] {0.000018165+0.0014500*x}; restrict x to domain*=-0.15:0.15, does not set the domain of the plot, as can be seen clearly from the fact that it runs from -4.5 to 4.5. – user121799 Nov 22 '18 at 12:54

You are using restrict x to domain*=-0.15:0.15,restrict y to domain*=-0.0004:0.0004,, about which the manual says

However, you do not set an appropriate domain. If you do that,

\documentclass[crop,tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=8cm,
height=6cm,
samples=6,
restrict x to domain*=-0.15:0.15,
restrict y to domain*=-0.0004:0.0004,
xmin=-0.05, xmax=0.05,
ymin=-0.0002, ymax=0.0002,
axis lines=left,
grid=both,
domain=-0.05:0.05
]