仅缩放从文件读取的数据集,而不缩放整个图形

仅缩放从文件读取的数据集,而不缩放整个图形

我的数据集范围变化很​​大。因此,我想缩放数据集以使其适应我的模板,以便网格、轴等与相邻子图相同。

做到这一点最简单的方法是什么?

如上所述,我不想要整个图像的比例。

就像是

\begin{tikzpicture}[scale=4]

 \draw[step=0.2cm, very thin,color=black!20] (-0.01,-0.01) grid (2.09,1.19);
    \draw[->] (-0,0) -- (2.09,0) node[right] {$t$};
    \draw[->] (0,0) -- (0,1.19) node[above] {$y_1$};

    \foreach \x in {0,0.2,...,2.1}  \node[anchor=north, font=\tiny] at (\x,0) {\num[round-mode=places,round-precision=1,decimalsymbol=comma]{\x}};
    \foreach \y in {0,0.2,...,1.1}  \node[anchor=east, font=\tiny] at (0,\y) {\num[round-mode=places,round-precision=1,decimalsymbol=comma]{\y}};


     \draw[thick] plot file {Grafik/tikz/fr_t.dat}  ;
\end{tikzpicture}

我不想缩放整个图片,而只想缩放数据集和 y 轴值。例如

.
.
\foreach \y in {0,2,...,10.1}   \node...
\draw[thick] plot file[scaling=0.1] {Grafik/tikz/fr_t.dat}  ;
.
.

答案1

由于各种原因,我不使用pgfplots,但 percusse 注释可能更好。tikz我唯一的答案是替换:

\draw[thick] plot file {Grafik/tikz/fr_t.dat} ;

经过

\begin{scope}[xscale=0.5,yscale=0.1,xshift=30,yshift=25] % or whatever you want
\draw[thick] plot file {Grafik/tikz/fr_t.dat} ;
\end{scope}

或者更简单,你不需要换班:

\draw[thick,color=blue] plot[y,yscale=0.5,xscale=0.1] file {Grafik/tikz/fr_t.dat} ;

y 轴的处理更加复杂。您必须使用不同的变量。功能齐全的 MWE 是:

\documentclass{standalone}
\usepackage{tikz}
\usepackage[version-1-compatibility]{siunitx}
\begin{document}
\begin{tikzpicture}[scale=4]
    \def\myfactor{10}
    \draw[step=0.2cm, very thin,color=black!20] (-0.01,-0.01) grid (2.09,1.19);
    \draw[->] (-0,0) -- (2.09,0) node[right] {$t$};
    \draw[->] (0,0) -- (0,1.19) node[above] {$y_1$};
    \foreach \x in {0,0.2,...,2.1}  \node[anchor=north, font=\tiny] at (\x,0) {\num[round-mode=places,round-precision=1,decimalsymbol=comma]{\x}};
    \foreach \y in {0,0.2,...,1.1}  {
        \pgfmathsetmacro{\yy}{\myfactor*\y}
        \node[anchor=east, font=\tiny] at (0,\y) {\num[round-mode=places,round-precision=1,decimalsymbol=comma] {\yy}};
    }
\draw[thick,color=blue] plot[y,yscale=1/\myfactor,xscale=0.1] file {data.txt} ;
\end{tikzpicture}
\end{document}

对于 a ,其data.txt范围y从 0 到 10:

当然,您可以为 做同样的事情x

待办问题:如何自动获取必须设置宏的值\myfactor

相关内容