2

I'm writing an exam paper for a friend's tutoring business. One of the questions is going to be on velocity-time graphs. I wanted the 4 graphs to show up in a 2x2 grid but using the code below they are showing up in a 4x1 structure. How can I change this?

The code:

\question[1] A car, initially at rest, sets off a 2m/s and travels at this velocity for 2 seconds. It then decelerates a 1m/s$^2$ to 0m/s. It then accelerates at -0.5m/s$^2$ until it reaches a velocity of -1m/s. It stays at this velocity for 2 seconds before coming instantly to rest. Which of the following velocity-time graphs represents the motion of the car?

\begin{figure}[h!]
\centering
    \begin{subfigure}[b]{0.2\textwidth}
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:a}
    \end{subfigure}

    \begin{subfigure}[b]{0.2\textwidth}
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,0) -- (2,0) -- (4,-2) -- (6,-3) -- (6,-3) -- (8,-3);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:b}
    \end{subfigure}

    \begin{subfigure}[t]{0.2\textwidth}
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:c}
    \end{subfigure}

    \begin{subfigure}[b]{0.2\textwidth}
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,-2) -- (2,-2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:d}
    \end{subfigure}
\end{figure}
  • 2
    Welcome to TeX.SE! Remove blank line between firs and second and also between third and fourth sub figures. – Zarko Jun 22 at 19:10
  • Replace the empty lines between the first and second, and third and fourth subfigure by \quad? – user121799 Jun 22 at 19:10
  • that tikzpicture is part of the main document flow, it shouldn't be in a figure environment – David Carlisle Jun 22 at 19:27
1

Assuming that you are using the exam documentclass, I have made the following MWE. I have removed the empty lines between first and second as well as between the third and last subfigure. I have also increased the width of the subfigures to 0.5\textwidth (Make sure to add a % after \end{subfigure}). Additionally, I have added the \centering command into all subfigure environment and changed the vertical alignment of the third subfigure from t to b. Lastly, I have also introduced the siunitx package for a more uniform representation (and easy customization) of the numerical values and their units.

enter image description here

\documentclass{exam}

\usepackage{tikz}
\usepackage{subcaption}
\usepackage[per-mode=symbol]{siunitx}

\begin{document}
\begin{questions}
\question[1] A car, initially at rest, sets off a \SI{2}{\meter\per\second} and travels at this velocity for 2 seconds. It then decelerates a \SI{1}{\meter\per\second\squared} to \SI{0}{\meter\per\second}. It then accelerates at \SI{-0.5}{\meter\per\second\squared} until it reaches a velocity of \SI{-1}{\meter\per\second}. It stays at this velocity for 2 seconds before coming instantly to rest. Which of the following velocity-time graphs represents the motion of the car?

\begin{figure}[h!]
\centering
    \begin{subfigure}[b]{0.5\textwidth} \centering
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:a}
    \end{subfigure}%
%
    \begin{subfigure}[b]{0.5\textwidth} \centering
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,0) -- (2,0) -- (4,-2) -- (6,-3) -- (6,-3) -- (8,-3);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:b}
    \end{subfigure}

    \begin{subfigure}[b]{0.5\textwidth} \centering
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:c}
    \end{subfigure}%
%
    \begin{subfigure}[b]{0.5\textwidth} \centering
        \begin{tikzpicture}[scale=0.25]
        \draw [gray] (0,-3) grid (8,3);
        \draw [red] (0,-2) -- (2,-2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
        \draw[->] (0,0) -- (8,0);
        \draw[->] (0,-3) -- (0,3);
        \draw (0,2) node [left] {velocity(m/s)};
        \draw (8,-1) node [right] {time(s)};
        \end{tikzpicture}
        \caption{}
        \label{fig:d}
    \end{subfigure}
\end{figure}

\end{questions}
\end{document}
1

As supplement to @leandris answer, some off-topic changes which my be useful to you. They are marked (in the first sub figure) by % <--- ...

enter image description here

(red lines indicate page layout)

\documentclass{article}
\usepackage{geometry}
\usepackage{subcaption}
\usepackage{tikz}

%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

    \begin{document}
\begin{figure}[h!]
\centering
\begin{subfigure}{0.4\linewidth} % <---
    \begin{tikzpicture}[scale=0.5] % <---
    \draw [gray] (0,-3) grid (8,3);
    \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
    \draw[->] (0, 0) --  (8,0) node [right] {time (s)}; % <---
    \draw[->] (0,-3) -- node [above,sloped] {velocity (m/s)} (0,3); % <---
    \end{tikzpicture}
    \caption{}
    \label{fig:a}
\end{subfigure}
\hfil % <---
\begin{subfigure}{0.4\linewidth}
    \begin{tikzpicture}[scale=0.5]
    \draw [gray] (0,-3) grid (8,3);
    \draw [red] (0,0) -- (2,0) -- (4,-2) -- (6,-3) -- (6,-3) -- (8,-3);
    \draw[->] (0, 0) --  (8,0) node [right] {time (s)};;
    \draw[->] (0,-3) -- node [above,sloped] {velocity (m/s)} (0,3);
    \end{tikzpicture}
    \caption{}
    \label{fig:b}
\end{subfigure}

\bigskip
\begin{subfigure}{0.4\linewidth}
    \begin{tikzpicture}[scale=0.5]
    \draw [gray] (0,-3) grid (8,3);
    \draw [red] (0,2) -- (2,2) -- (4,0) -- (6,1) -- (6,0) -- (8,0);
    \draw[->] (0, 0) --  (8,0) node [right] {time (s)};;
    \draw[->] (0,-3) -- node [above,sloped] {velocity (m/s)} (0,3);
    \end{tikzpicture}
    \caption{}
    \label{fig:c}
\end{subfigure}
\hfil
\begin{subfigure}{0.4\linewidth}
    \begin{tikzpicture}[scale=0.5]
    \draw [gray] (0,-3) grid (8,3);
    \draw [red] (0,-2) -- (2,-2) -- (4,0) -- (6,-1) -- (6,0) -- (8,0);
    \draw[->] (0,0) -- (8,0);
    \draw[->] (0,-3) -- (0,3);
    \draw[->] (0, 0) --  (8,0) node [right] {time (s)};;
    \draw[->] (0,-3) -- node [above,sloped] {velocity (m/s)} (0,3);
   \end{tikzpicture}
    \caption{}
    \label{fig:d}
\end{subfigure}
\end{figure}
    \end{document}

Note: please always provide MWE (Minimal Working Example), a small but complete document, which we can compile as it is.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.