2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Аппроксимация в LaTex
Сообщение25.03.2017, 11:22 
Пожалуйста расскажите подробно как построить аппроксимацию графика в LaTex.

 
 
 
 Re: Аппроксимация в LaTex
Сообщение25.03.2017, 13:24 
Аватара пользователя
Пожалуйста, расскажите подробно, что Вы понимаете под аппроксимацией графика.

 
 
 
 Re: Аппроксимация в LaTex
Сообщение25.03.2017, 13:58 
У меня есть две таблички.
первая:
n Dark
1 1.21E-4
2 2.56E-4
3 4.41E-4
4 5.76E-4
вторая:
n Dark
1 8.10E-5
2 1.82E-4
3 2.89E-4
4 4.00E-4


Моя задача построить на одном графике данные для первой и второй таблички. Найти их аппроксимации (т.е. уравнения вида y=bx+a) и записать результаты в легенды графика. Под аппроксимацией я понимаю построить линейную функцию по точкам на графике.

 
 
 
 Re: Аппроксимация в LaTex
Сообщение25.03.2017, 14:16 
Аватара пользователя
У математиков такое "графиком" не называется. Tikz дает возможность строить charts, смотрите документацию пакета. Что касается построения графика линейной функции, то это прямая.

 
 
 
 Re: Аппроксимация в LaTex
Сообщение25.03.2017, 14:23 
В интернете я нашел рабочий пример построения. Все работает но в легенде отображается только одно уравнение аппроксимации а не два. В чем причина?
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
\documentclass{article}
\usepackage{siunitx}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\begin{document}

\pgfplotstableset{ %
        create on use/SquareLight/.style={
                create col/expr={\thisrow{Dark}}}
}
\pgfplotstableset{ %
        create on use/SquareLight(1)/.style={
                create col/expr={\thisrow{Dark}}}
}
\begin{tikzpicture}
\pgfplotsset{width=10cm,
        compat=1.3,
        legend style={font=\footnotesize}}
\begin{axis}[
%scaled y ticks=base 10:7,
xlabel={$n$},
ylabel={$r^2$, м$^2$},
legend cell align=left,
legend pos=south east,
grid=major,
width=1\linewidth,
height=0.7\linewidth,]
\addplot[
orange,
only marks,
]%
table[
x=n,
y expr={\thisrow{Dark}}]{dark(1).dat};
\addlegendentry{Messpunkte}
\addplot[orange,
]%
table[y={create col/linear regression={y = SquareLight}}]{dark(1).dat};
\addlegendentry{%
        $\pgfmathprintnumber{\pgfplotstableregressiona} \cdot x
        \pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$ lin. Regression
} %
\addplot[
red,
only marks,
]%
table[
x=n,
y expr={\thisrow{Dark}}]{dark(2).dat};
\addlegendentry{Messpunkte}
\addplot[red,
]%
table[y={create col/linear regression={y =SquareLight(1)}}]{dark(2).dat};

\end{axis}
\end{tikzpicture}


\end{document}
 

 
 
 [ Сообщений: 5 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group