9

I'm trying to create a LaTeX version of the System Usability Scale that rather faithfully reproduces the original. It roughly resembles a table, but is a rather specialized version of one.

Excerpt from System Usability Scale questionnaire

My rather naive attempt where I lose the correct spacing

\documentclass[12pt,twoside,a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}

\pagestyle{plain}

\begin{document}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{L{0.5\textwidth}|C{0.1\textwidth}|C{0.1\textwidth}|C{0.1\textwidth}|C{0.1\textwidth}|C{0.1\textwidth}|}
\cline{2-6}
I think that I would like to use this system frequently                                   & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I found the system unnecessarily complex                                                  & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I thought the system was easy to use                                                      & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I think that I would need the support of a technical person to be able to use this system & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I found the various functions in this system were well integrated                         & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I thought there was too much inconsistency in this system                                 & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I would imagine that most people would learn to use this system very quickly              & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I found the system very cumbersome to use                                                 & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I felt very confident using the system                                                    & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
I needed to learn a lot of things before I could get going with this system               & 1 & 2 & 3 & 4 & 5 \\ \cline{2-6} 
\end{tabular}
\end{table}
\end{document}

I would like to know if achieving this style should be using 100% tables or if there is a trick to keep the right-hand rows wrapping the numbers? I'd like to avoid using images.

8

You could do something like the following, I suppose. It combines the enumerate environment with a tabular. (Below is an edited version, which contains the new command \printtblhdr, which is now used following a \section.)

\documentclass[12pt,twoside,a4paper]{article}
\usepackage[showframe]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{enumitem}
\setlist[enumerate,1]{labelindent=0pt, leftmargin=*}
\usepackage{array,tabularx}

\newcolumntype{P}{>{\centering\arraybackslash}p{0.75cm}}
\newcolumntype{L}{>{\raggedright\arraybackslash}m{0.2\textwidth}}
\newcolumntype{R}{>{\raggedleft\arraybackslash}m{0.2\textwidth}}

\newcommand{\printtblhdr}{%
  \hfill
  \begingroup
  \setlength\tabcolsep{0pt}%
  \begin{tabularx}{0.41\textwidth}{ @{} l *{3}X r @{} }
    \multicolumn{2}{l}{\bfseries\shortstack[l]{Strongly\\ Disagree}}
    &&
    \multicolumn{2}{l}{\bfseries\shortstack[r]{Strongly\\ Agree}}
    \\
  \end{tabularx}
  \endgroup
}

\newcommand{\usetbl}{%
  \begin{tabular}{@{}|*5{P|}@{}}
    \hline
    1 & 2 & 3 & 4 & 5 \\
    \hline
  \end{tabular}
}

\newcommand\prop[1]{%
  \item
  \parbox[t]{0.5\textwidth}{#1}%
  \qquad
  \parbox[t]{0.5\textwidth}{\usetbl}%
}


\begin{document}

\section{Your Views Are Important to Us}


\printtblhdr

\begin{enumerate}
\prop{I think that I would like to use this system frequently}

\prop{I found the system unnecessarily complex}

\prop{I thought the system was easy to use}

\prop{I think that I would need the support of a technical person to be able to use this system}

\prop{I found the various functions in this system were well integrated}

\prop{I thought there was too much inconsistency in this system}

\prop{I would imagine that most people would learn to use this system very quickly}

\prop{I found the system very cumbersome to use}

\prop{I felt very confident using the system}

\prop{I needed to learn a lot of things before I could get going with this system}

\end{enumerate}

\end{document}
3
  • Wow. That is very nice. – Cameron Lowell Palmer Jun 12 '16 at 8:07
  • If I put the questionnaire below a \section header it causes the header Strong disagree/agree to shift a bit to the left. Why is that? – Cameron Lowell Palmer Jun 12 '16 at 8:58
  • 1
    @CameronLowellPalmer -- well, I think it's because the first version was a little lazy in its implementation. This is a little more rigorous. Hopefully, you find that it works better. – jon Jun 12 '16 at 17:51
6

A style with automatic numbering and automatic placing of a scaletable

\documentclass[12pt,twoside,a4paper]{article}
\usepackage[utf8]{inputenc}

\usepackage{array}

\newcounter{rowcntr}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{N}[1]{>{\stepcounter{rowcntr}\therowcntr.}R{#1}}




\newcommand{\scaletable}{%
  \begin{tabular}[t]{|*{5}{c|}}%
    \hline
    1 & 2 & 3 & 4 & 5 \tabularnewline
    \hline
  \end{tabular}
}



\pagestyle{plain}

\begin{document}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{N{1cm}L{0.6\textwidth}C{0.3\textwidth}}
\multicolumn{1}{l}{}  & &     \footnotesize \bfseries\parbox{0.14\textwidth}{Strongly\\ disagree}\parbox{0.14\textwidth}{\raggedleft Strongly agree} \tabularnewline
&I think that I would like to use this system frequently                                   & \scaletable \tabularnewline
&I found the system unnecessarily complex                                                  & \scaletable \tabularnewline
&I thought the system was easy to use                                                      & \scaletable \tabularnewline
&I think that I would need the support of a technical person to be able to use this system & \scaletable \tabularnewline
&I found the various functions in this system were well integrated                         & \scaletable \tabularnewline
&I thought there was too much inconsistency in this system                                 & \scaletable \tabularnewline
&I would imagine that most people would learn to use this system very quickly              & \scaletable \tabularnewline
&I found the system very cumbersome to use                                                 & \scaletable \tabularnewline
&I felt very confident using the system                                                    & \scaletable \tabularnewline
&I needed to learn a lot of things before I could get going with this system               & \scaletable \tabularnewline
\end{tabular}
\end{table}
\end{document}

enter image description here

2

You can define the whole tabular with numbers 1--5 and vertical and horizontal lines as a macro (nearly as in your example). Then it remains to define tabular as follows

\begin{tabular}{L{0.5\textwidth}@{\YourEarlierDefinedMacro}}

In this case @ defines element which appears in every verse.

1
  • I like this macro idea although I must figure out how to create a table in a macro. – Cameron Lowell Palmer Jun 12 '16 at 8:03

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.