
Aquí está mi código:
\begin{tikzpicture}
[
scale=1.05,
declare function=
{
funcc(\x)=
%(\x<-0.6) * (\x)+
(\x<-0.6) * (0.7285067873303168+2.058823529411765*\x+2.1606334841628962*\x^2 + 0.7918552036199096*\x^3)+
and(\x>=-0.6,\x<-0.4) * (1.1411764705882352+ 4.294117647058823*\x + 6.029411764705881*\x^2 +
2.941176470588235*\x^3)+
and(\x>=-0.4,\x < -0.2) * (0.5*(2 + 6*\x + 5*\x^2))+
and(\x>=-0.2,\x <0) * (1 +1*\x - 12.5*\x^2 - 25*\x^3)+
and(\x>=0,\x <0.2) * (1 - 1*\x - 12.5*\x^2 +25*\x^3)+
add(\x>=0.2,\x < 0.4) * (0.5*(2 - 6*\x + 5*\x^2))+
and(\x>=0.4 ,\x<0.6) * (1.14118 - 4.29412*\x + 6.02941*\x^2 - 2.94118*\x^3) +
%(\x>=0.6) * (\x^3);
(\x>=0.6) * (0.728507 - 2.05882*\x + 2.16063*\x^2 - 0.791855*\x^3);
},
]
\begin{axis}
[
title = {},%\quad The distribution of the points and the line of regression},
axis lines = middle,
legend pos=outer north east,
xlabel={$x$},
ylabel={$y$},
xmin=-2, xmax=2,
ymin=-2, ymax=2,
]
\addplot%S 10
[
domain = -1:1,
legend pos=outer north east,
color=yellow,
samples = 1000
]
{
(\x<-0.6) * (0.7285067873303168+2.058823529411765*\x+2.1606334841628962*\x^2 + 0.7918552036199096*\x^3)+
and(\x>=-0.6,\x<-0.4) * (1.1411764705882352+ 4.294117647058823*\x + 6.029411764705881*\x^2 +
2.941176470588235*\x^3)+
and(\x>=-0.4,\x < -0.2) * (0.5*(2 + 6*\x + 5*\x^2))+
and(\x>=-0.2,\x <0) * (1 +1*\x - 12.5*\x^2 - 25*\x^3)+
and(\x>=0,\x <0.2) * (1 - 1*\x - 12.5*\x^2 +25*\x^3)+
add(\x>=0.2,\x < 0.4) * (0.5*(2 - 6*\x + 5*\x^2))+
and(\x>=0.4 ,\x<0.6) * (1.14118 - 4.29412*\x + 6.02941*\x^2 - 2.94118*\x^3) +
%(\x>=0.6) * (\x^3);
(\x>=0.6) * (0.728507 - 2.05882*\x + 2.16063*\x^2 - 0.791855*\x^3)
};
\addplot %N 10
[
domain = -1:1,
legend pos=outer north east,
color=green,
samples = 1000
]
{
-220.942*x^10+494.91*x^8-381.434*x^6+123.36*x^4-16.8552*x^2+1.
};
\addplot %N_{5}
[
domain = -1:1,
legend pos=outer north east,
color=blue,
samples = 1000
]
{
1.20192*x^4-1.73077*x^2+0.567308
};
%\addlegendentry{$N_{5}(x)$}
\addplot %f(x)
[
domain = -1:1,
legend pos=outer north east,
color=red,
samples = 1000
]
{
1 /(1+25*x^2)
};
%\addlegendentry{$f(x) = \frac{1}{1+25x^{2}}$}
\legend{$S_{10}(x)$,$N_{10}(x)$,$N_{5}(x)$,$f(x) = \frac{1}{1+25x^{2}}$};
\end{axis}
\end{tikzpicture}
El resultado está a continuación:
La línea amarilla debería ser casi igual a la línea roja, pero la diferencia es demasiado grande.
El resultado correcto de la línea amarilla que obtuve de Mathematica se encuentra a continuación:
No puedo encontrar mi error de todos modos, así que creo que el problema proviene del propio pdgplots. Por cierto, me tomó aproximadamente una noche arreglar mi código, pero parece estar bien.
Respuesta1
Cambiando todo add
a and
da:
\documentclass[border=1cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
[
scale=1.05,
declare function=
{
funcc(\x)=
%(\x<-0.6) * (\x)+
(\x<-0.6) * (0.7285067873303168+2.058823529411765*\x+2.1606334841628962*\x^2 + 0.7918552036199096*\x^3)+
and(\x>=-0.6,\x<-0.4) * (1.1411764705882352+ 4.294117647058823*\x + 6.029411764705881*\x^2 +
2.941176470588235*\x^3)+
and(\x>=-0.4,\x < -0.2) * (0.5*(2 + 6*\x + 5*\x^2))+
and(\x>=-0.2,\x <0) * (1 +1*\x - 12.5*\x^2 - 25*\x^3)+
and(\x>=0,\x <0.2) * (1 - 1*\x - 12.5*\x^2 +25*\x^3)+
and(\x>=0.2,\x < 0.4) * (0.5*(2 - 6*\x + 5*\x^2))+
and(\x>=0.4 ,\x<0.6) * (1.14118 - 4.29412*\x + 6.02941*\x^2 - 2.94118*\x^3) +
%(\x>=0.6) * (\x^3);
(\x>=0.6) * (0.728507 - 2.05882*\x + 2.16063*\x^2 - 0.791855*\x^3);
},
]
\begin{axis}
[
title = {},%\quad The distribution of the points and the line of regression},
axis lines = middle,
legend pos=outer north east,
xlabel={$x$},
ylabel={$y$},
xmin=-2, xmax=2,
ymin=-2, ymax=2,
]
\addplot%S 10
[
domain = -1:1,
legend pos=outer north east,
color=yellow,
samples = 100
]
{
(\x<-0.6) * (0.7285067873303168+2.058823529411765*\x+2.1606334841628962*\x^2 + 0.7918552036199096*\x^3)+
and(\x>=-0.6,\x<-0.4) * (1.1411764705882352+ 4.294117647058823*\x + 6.029411764705881*\x^2 +
2.941176470588235*\x^3)+
and(\x>=-0.4,\x < -0.2) * (0.5*(2 + 6*\x + 5*\x^2))+
and(\x>=-0.2,\x <0) * (1 +1*\x - 12.5*\x^2 - 25*\x^3)+
and(\x>=0,\x <0.2) * (1 - 1*\x - 12.5*\x^2 +25*\x^3)+
and(\x>=0.2,\x < 0.4) * (0.5*(2 - 6*\x + 5*\x^2))+
and(\x>=0.4 ,\x<0.6) * (1.14118 - 4.29412*\x + 6.02941*\x^2 - 2.94118*\x^3) +
%(\x>=0.6) * (\x^3);
(\x>=0.6) * (0.728507 - 2.05882*\x + 2.16063*\x^2 - 0.791855*\x^3)
};
\addplot %N 10
[
domain = -1:1,
legend pos=outer north east,
color=green,
samples = 100
]
{
-220.942*x^10+494.91*x^8-381.434*x^6+123.36*x^4-16.8552*x^2+1.
};
\addplot %N_{5}
[
domain = -1:1,
legend pos=outer north east,
color=blue,
samples = 100
]
{
1.20192*x^4-1.73077*x^2+0.567308
};
%\addlegendentry{$N_{5}(x)$}
\addplot %f(x)
[
domain = -1:1,
legend pos=outer north east,
color=red,
samples = 100
]
{
1 /(1+25*x^2)
};
%\addlegendentry{$f(x) = \frac{1}{1+25x^{2}}$}
\legend{$S_{10}(x)$,$N_{10}(x)$,$N_{5}(x)$,$f(x) = \frac{1}{1+25x^{2}}$};
\end{axis}
\end{tikzpicture}
\end{document}
Donde el gráfico amarillo está cerca del gráfico rojo. Obviamente, no sé qué intentas hacer, pero parece más probable que hayas cometido este error que que se deba a un error.