plotar e ajustar do pgfplottable

plotar e ajustar do pgfplottable

Eu gostaria de traçar um gráfico a partir de dados criados dentro do arquivo pgfplottable.

Eu tenho um arquivo de dados data.dat:

x,y
1,2
2,3
3,4
4,5
5,8
6,9
7,34

E este código:

\documentclass{beamer}


\usepackage{etex}
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}

\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{epstopdf}
\usepackage{tikz}
\usepackage{circuitikz}
\usepackage{pstricks}
\usepackage{array}

\usepackage{graphicx}

\usepackage{filecontents}

\begin{document}

\begin{frame}


\pgfplotstableread[col sep = comma]{data.dat}\loadedtable
\pgfplotstableset{
create on use/new/.style={
create col/expr={\thisrow{x}^(2)}},
create on use/new2/.style={
create col/expr ={\thisrow{y}/((7.75))}
}
}

\end{frame}

\end{document}

Então, a partir dos meus dados, criei duas outras colunas de dados.

Agora, eu gostaria de traçar o novo em relação ao novo2 e fazer um ajuste desse gráfico.

Alguém sabe como fazer isso?

Responder1

Você precisa

\begin{tikzpicture}
\begin{axis}
\addplot table [x=new,y=new2] {\loadedtable};
\addplot table[x=new,y={create col/linear regression={y=new2}}] {\loadedtable};
\end{axis}
\end{tikzpicture}

insira a descrição da imagem aqui

O exemplo completo:

\documentclass{beamer}

\usepackage{etex}
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}

\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{epstopdf}
\usepackage{tikz}
\usepackage{circuitikz}
\usepackage{array}
\pgfplotsset{compat=newest}

\usepackage{graphicx}

\usepackage{filecontents}
\begin{filecontents*}{data.dat}
x,y
1,2
2,3
3,4
4,5
5,8
6,9
7,34
\end{filecontents*}

\begin{document}

\begin{frame}


\pgfplotstableread[col sep = comma]{data.dat}\loadedtable
\pgfplotstableset{
create on use/new/.style={
create col/expr={\thisrow{x}^(2)}},
create on use/new2/.style={
create col/expr ={\thisrow{y}/((7.75))}
  }
}
\begin{tikzpicture}
\begin{axis}
\addplot table [x=new,y=new2] {\loadedtable};
\addplot table[x=new,y={create col/linear regression={y=new2}}] {\loadedtable};
\end{axis}
\end{tikzpicture}
\end{frame}

\end{document}

informação relacionada