簡體   English   中英

pgfplot 的邊界框坐標

[英]Bounding box coordinates for pgfplot

如何獲得下面 pgfplot 的邊界框坐標? 我需要 pgfplot 空間中的坐標。 (current axis.south west) 和 (current bounding box.south west) 例如,不給我需要的東西。 我期待像 SW = (-7,-1.1), NE = (8.2,1.4) 這樣的東西,它會延伸到紅色矩形之外的右側。

\documentclass[border=0pt,multi=my]{standalone}
\usepackage{amssymb,amsmath}
\usepackage[pass,paperheight=\maxdimen]{geometry}
\usepackage{graphicx}
\usepackage{epsfig}
\usepackage{xcolor}
\usepackage{pgf,tikz,pgfplots}
\usetikzlibrary{calc,shapes,positioning,fit,decorations,decorations.text,decorations.pathmorphing,backgrounds,patterns,arrows,arrows.meta}
\usepackage{ifthen}
\usepackage{pagecolor}

\tikzset{every picture/.style={line width=0.02cm}}

\begin{document}

\pagestyle{empty}

\begin{my}
\begin{tikzpicture}[tight background,background rectangle/.style={draw=none,fill=red!45},show background rectangle,scale=0.85]
    \begin{axis}[
      name=foo,
      width=360pt,
        height=210pt,
        xmin=-7,
        xmax=8,
        ymin=-1.1,
        ymax=1.4,
        xtick={0},
        xticklabels={$0$},
        ytick={0},
        yticklabels={$0$},
        extra x ticks={-6.283185307,-4.71238898,-3.141592654,-1.570796327,0,1.570796327,3.141592654,4.71238898,6.283185307},
    extra x tick labels={$-2\pi$,$-\frac{3\pi}{2}$,$-\pi$,$-\frac{\pi}{2}$,$0$,$\frac{\pi}{2}$,$\pi$,$\frac{3\pi}{2}$,$2\pi$},
        extra x tick style={
            xticklabel style={below right},
        },
        extra y ticks={-1,1},
    extra y tick labels={$-1$,$1$},
        extra y tick style={
            yticklabel style={right,xshift=5pt},
        },          
        axis x line=center,
        axis y line=center]
        \addplot[line width=0.0325cm, cyan!60!black, domain=-7:7, samples=200] {sin(deg(x))};
        \node at (axis cs:8.1,-0.12) {$x$};
        \node[anchor=west] at (axis cs:0.1,1.3) {$y$};
    \end{axis}
\end{tikzpicture}
\end{my}

\end{document}

您可以在軸坐標系中輸入您的坐標

\draw[red] (axis cs:-7,-1.1) -- (axis cs:8.2,1.4);

下面的紅線是您在軸系中的坐標,用於比較當前的綠色邊界框:


\documentclass[border=0pt,multi=my]{standalone}
\usepackage{amssymb,amsmath}
\usepackage[pass,paperheight=\maxdimen]{geometry}
\usepackage{graphicx}
\usepackage{epsfig}
\usepackage{xcolor}
\usepackage{pgf,tikz,pgfplots}
\usetikzlibrary{calc,shapes,positioning,fit,decorations,decorations.text,decorations.pathmorphing,backgrounds,patterns,arrows,arrows.meta}
\usepackage{ifthen}
\usepackage{pagecolor}

\tikzset{every picture/.style={line width=0.02cm}}

\begin{document}

\pagestyle{empty}

\begin{my}
\begin{tikzpicture}[tight background,background rectangle/.style={draw=none,fill=red!45},show background rectangle,scale=0.85]
    \begin{axis}[
      name=foo,
      width=360pt,
        height=210pt,
        xmin=-7,
        xmax=8,
        ymin=-1.1,
        ymax=1.4,
        xtick={0},
        xticklabels={$0$},
        ytick={0},
        yticklabels={$0$},
        extra x ticks={-6.283185307,-4.71238898,-3.141592654,-1.570796327,0,1.570796327,3.141592654,4.71238898,6.283185307},
    extra x tick labels={$-2\pi$,$-\frac{3\pi}{2}$,$-\pi$,$-\frac{\pi}{2}$,$0$,$\frac{\pi}{2}$,$\pi$,$\frac{3\pi}{2}$,$2\pi$},
        extra x tick style={
            xticklabel style={below right},
        },
        extra y ticks={-1,1},
    extra y tick labels={$-1$,$1$},
        extra y tick style={
            yticklabel style={right,xshift=5pt},
        },          
        axis x line=center,
        axis y line=center]
        \addplot[line width=0.0325cm, cyan!60!black, domain=-7:7, samples=200] {sin(deg(x))};
        \node at (axis cs:8.1,-0.12) {$x$};
        \node[anchor=west] at (axis cs:0.1,1.3) {$y$};
        \draw[red] (axis cs:-7,-1.1) -- (axis cs:8.2,1.4);
    \end{axis}
    \draw[green] (current bounding box.south west) -- (current bounding box.north east);
\end{tikzpicture}
\end{my}

\end{document}

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM