对于 pgfplots 来说,值是否可以太小/太大?

对于 pgfplots 来说,值是否可以太小/太大?

所以我得到了以下代码,我想在其中推断一条线性回归线。我尝试将其添加\pgfplotstableregressiona*x+\pgfplotstableregressionb为一个新的图,但它根本不会显示图表。我使用了这个帖子作为参考。

我的代码如下:

\documentclass{standalone}

\usepackage{pgfplots, pgfplotstable}
\usepackage{siunitx}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[
            width=\textwidth,
            height=0.75*\textwidth,
            title=$E_{kin}$-$f$-Diagramm,
            grid=major,
            xlabel={$f$ in \si{\hertz}},% \SI{10e14}{Hz}},
            ylabel={$E_{kin}=e\cdot U$ in \si{\electronvolt}},
            legend pos = north west
            ]
            \addplot [only marks, black] table [
            x = ft,
            y = et,
            ] {
            ft  et
            490658687397709 1.4419589706E-17
            509851119047619 2.95334559534E-17
            571033253333333 7.09230189984E-17
            593648431683168 8.03224552512E-17
            635153512711864 1.108706230728E-16
            };
            \addplot [blue] table [ %draw=none
                x = ft,
                y = {create col/linear regression={y=et}},
            ]{
            ft  et
            490658687397709 1.4419589706E-17
            509851119047619 2.95334559534E-17
            571033253333333 7.09230189984E-17
            593648431683168 8.03224552512E-17
            635153512711864 1.108706230728E-16
            };
            \addlegendentry{$E_{kin}(f)$}
            \addlegendentry{
            $\pgfmathprintnumber{\pgfplotstableregressiona}\cdot x
            \pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$}
            \addplot[no marks,red]{\pgfplotstableregressiona*x+\pgfplotstableregressionb};
        \end{axis}
    \end{tikzpicture}
\end{document}

它产生:输出 所以正如你所看到的,它只会绘制由线性回归直接产生的线,而不是我想要的扩展线,即使代码类似于解决方案。我的建议是,使用的值太小或太大,包无法处理。

答案1

好的,我刚刚解决了这个问题:我需要在最终的回归线图中添加域值,如下所示:\addplot[no marks, red, domain=0:7*10^14]{\pgfplotstableregressiona*x+\pgfplotstableregressionb};手动,但现在它可以工作了。

希望这能帮助遇到同样问题的人。

相关内容