Tikz Pgfplots:请求代码调整以使用网格线调整笛卡尔平面上的间距和刻度

Tikz Pgfplots:请求代码调整以使用网格线调整笛卡尔平面上的间距和刻度

通过借用一些代码,我创建了一个 2 列(枚举)4 个问题的 mwe 工作表,要求学生通过绘图来找到方程组的解。

我认为,当前代码将 tic 标签渲染得过大、过暗,造成拥挤的外观:

在此处输入图片描述

所需的渲染是这样的(没有绘制的线和“A”“B”标签):

在此处输入图片描述

我想问您 4 个问题:

  1. 请教我控制的代码行字体大小和颜色tic 标记标签并提出改进建议
  2. 哪条线控制每个水平/垂直之间的间距网格线?
  3. 由于本工作表每页仅显示 4 个图表,因此尺寸空白笛卡尔平面增加尽管仍可放在一页上
  4. 在我的完整版代码中,我插入了一个\newpage被忽略的**。我应该使用什么命令来强制打开新页面?

非常感谢您花时间帮助我!

姆韦

\documentclass[12pt]{exam}
\usepackage[a4paper,margin=0.5in,include head]{geometry}
\usepackage{amsmath}
\usepackage{systeme}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{intersections}
\usepackage{tikz}
%\pgfplotsset{compat=1.18}
\usepackage{enumitem,tasks}
\settasks{
%  after-item-skip=5em,
%  after-skip=2cm,
  label-width=2em,
  item-indent=3em,
  label=(\arabic*),
  column-sep=2em,
 }
 \pagestyle{head}
\header{\textbf{Algebra II: Quadratic Systems}}
{}
{ 04/17/23} 
\begin{document}

\textbf {SET A: Solve each system by graphing.}

\begin{tasks}(2)
%Prob #1
\task $\syslineskipcoeff{1}\systeme*{y=2(x+4)^2-5, y=-2x-9}$\\
\bigskip
\begin{tikzpicture}
        \begin{axis}[
            axis lines=middle,
            axis line style={-stealth,shorten >=-3mm},
            xmin=-10,xmax=10,
            ymin=-10,ymax=10,
            xlabel=$x$,
            every axis x label/.style={at={(xticklabel cs:1,0)},
            yshift=1.8em,
            anchor=south west},
            ylabel=$y$,
            every axis y label/.style={at={(yticklabel cs:1,0)},
            xshift=2.7em,yshift=0.2em,
            anchor=south east},
            grid=both,
            grid style={draw=gray!25},
            xtick={-10, -8, ..., 10}, xtick style={yshift=-0.5ex},
            ytick={-10, -8, ..., 10}, ytick style={xshift=-0.5ex},
            yticklabel style={xshift=-0.5ex},
            minor tick num=1,
            minor tick length=0.5ex,
            minor x tick style={yshift=0.25ex}, minor y tick style={xshift=0.25ex},
        ]
        \end{axis}
    \end{tikzpicture}
%Prob #2
  \task $\syslineskipcoeff{1}\systeme*{y=2(x+4)^2-3, y=x+7}$\\
\bigskip
\begin{tikzpicture}
        \begin{axis}[
            axis lines=middle,
            axis line style={-stealth,shorten >=-3mm},
            xmin=-10,xmax=10,
            ymin=-10,ymax=10,
            xlabel=$x$,
            every axis x label/.style={at={(xticklabel cs:1,0)},
            yshift=1.8em,
            anchor=south west},
            ylabel=$y$,
            every axis y label/.style={at={(yticklabel cs:1,0)},
            xshift=2.7em,yshift=0.2em,
            anchor=south east},
            grid=both,
            grid style={draw=gray!25},
            xtick={-10, -8, ..., 10}, xtick style={yshift=-0.5ex},
            ytick={-10, -8, ..., 10}, ytick style={xshift=-0.5ex},
            yticklabel style={xshift=-0.5ex},
            minor tick num=1,
            minor tick length=0.5ex,
            minor x tick style={yshift=0.25ex}, minor y tick style={xshift=0.25ex},
        ]
        \end{axis}
    \end{tikzpicture}
%Prob #3
\task $\syslineskipcoeff{1}\systeme*
{y=2(x-3)^2+1, 2x+y=11}$\\
\bigskip
\begin{tikzpicture}
        \begin{axis}[
            axis lines=middle,
            axis line style={-stealth,shorten >=-3mm},
            xmin=-10,xmax=10,
            ymin=-10,ymax=10,
            xlabel=$x$,
            every axis x label/.style={at={(xticklabel cs:1,0)},
            yshift=1.8em,
            anchor=south west},
            ylabel=$y$,
            every axis y label/.style={at={(yticklabel cs:1,0)},
            xshift=2.7em,yshift=0.2em,
            anchor=south east},
            grid=both,
            grid style={draw=gray!25},
            xtick={-10, -8, ..., 10}, xtick style={yshift=-0.5ex},
            ytick={-10, -8, ..., 10}, ytick style={xshift=-0.5ex},
            yticklabel style={xshift=-0.5ex},
            minor tick num=1,
            minor tick length=0.5ex,
            minor x tick style={yshift=0.25ex}, minor y tick style={xshift=0.25ex},
        ]
        \end{axis}
    \end{tikzpicture}
%Prob #4
\task $\syslineskipcoeff{1}\systeme*
{y=\frac{1}{2}(x-4)^2-3, y=2x-11}$\\
\bigskip
\begin{tikzpicture}
        \begin{axis}[
            axis lines=middle,
            axis line style={-stealth,shorten >=-3mm},
            xmin=-10,xmax=10,
            ymin=-10,ymax=10,
            xlabel=$x$,
            every axis x label/.style={at={(xticklabel cs:1,0)},
            yshift=1.8em,
            anchor=south west},
            ylabel=$y$,
            every axis y label/.style={at={(yticklabel cs:1,0)},
            xshift=2.7em,yshift=0.2em,
            anchor=south east},
            grid=both,
            grid style={draw=gray!25},
            xtick={-10, -8, ..., 10}, xtick style={yshift=-0.5ex},
            ytick={-10, -8, ..., 10}, ytick style={xshift=-0.5ex},
            yticklabel style={xshift=-0.5ex},
            minor tick num=1,
            minor tick length=0.5ex,
            minor x tick style={yshift=0.25ex}, minor y tick style={xshift=0.25ex},
        ]
        \end{axis}
    \end{tikzpicture}
\newpage
%Problems 5 -8 on 2nd page
\end{tasks}
\end{document}

答案1

  • 为了学习,pgfplots你应该阅读包文档:包 pgfplots 手册,并在网站上查看答案和示例集合PGFplots.net
  • 如果您在努力中遇到困难,当然可以在此网站上寻求帮助......
  • 以下建议与@Jasper Habicht 的回答类似,不同之处在于轴设置的代码稍微短一些。
  • MWE 仅专注于绘制图像。
\documentclass[12pt]{exam}
\usepackage[a4paper,margin=0.5in,include head]{geometry}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\begin{document}

\begin{tikzpicture}
        \begin{axis}[
            axis lines=middle,
            axis line style={-stealth,shorten >=-3mm},
            xlabel=$x$, xlabel style={anchor=south west},
            ylabel=$y$, ylabel style={anchor=south east},
            grid=both,
            grid style={draw=gray!25},
            ticklabel style={font=\scriptsize, text=cyan!50, inner sep=1pt},
            xmin=-10,   xmax=10,          
            ymin=-10,   ymax=10,
            xtick distance=2,
            ytick distance=2,
            minor tick num=1,
            tick align=outside,
        ]
        \end{axis}
    \end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

这并不是对您的几个问题的完整回答(实际上,在这个网站上,最好一次只问一个问题),但让我给您一些提示:

  • 您可以使用该选项axis equalX刻度。您可以使用不同的方式控制网格线的距离,但考虑到您拥有的代码示例,它将是、、、xmin选项以及和选项。使用和选项,您还可以控制绘图的实际大小,这将帮助您在一页上放置尽可能多的绘图xmaxyminymaxwidthheightwidthheight
  • xticklabel style可以使用和选项控制刻度的字体颜色和大小yticklabel style
  • minor tick从您的示例中删除了这些设置,因为在您显示的图片中,没有使用这些小刻度。
  • 如果您想反复使用同一组选项,创建自定义的 可能会有所帮助/.style

以上内容在一个 MWE 中:

\documentclass[border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\pgfplotsset{
    my axis format/.style={
        axis lines=middle,
        axis line style={
            -stealth,
            shorten >=-3mm
        },
        axis equal,
        xmin=-8, xmax=8,
        ymin=-8, ymax=8,
        width=10cm,
        height=10cm,
        xlabel=$x$,
        ylabel=$y$,
        grid=both,
        grid style={
            draw=gray!25
        },
        xtick={-10,-9,...,10}, 
        xtick style={
            yshift=-0.5ex, 
        },
        xticklabel style={
            font=\scriptsize\color{blue}
        },
        ytick={-10,-9,...,10}, 
        ytick style={
            xshift=-0.5ex
        },
        yticklabel style={
            font=\scriptsize\color{blue}
        },
    }
}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        my axis format
    ]
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容