7

What I want:

enter image description here

Minimal Example

\documentclass[a4paper]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amssymb,amsmath}
\usepackage{booktabs}
\usepackage[binary-units,group-separator={,}]{siunitx}
\sisetup{per-mode=fraction,
         binary-units=true,
         group-separator = {\,},
         range-phrase=-}
\DeclareSIUnit\pixel{px}
\DeclareSIUnit\float{float}
\DeclareSIUnit\floats{floats}

\begin{document}

\begin{table}[ht]
    \centering
    \begin{tabular}{cllrrl}
    \toprule
    \# & Type                     & \parbox[t]{3cm}{Filters @\par Patch size / stride} & Parameters & FLOPs & Output size  \\\midrule
       & Input                    &                                           &          0  &            0 & \hphantom{0}1 @ $32\times 32$    \\
    1  & Convolution              & \hphantom{0}6 @ $5 \times 5 \times 1$ / 1 &        156  & \num{307800} & \hphantom{0}\bf{6}\,@\,$\mathbf{28\times 28}$    \\
    2  & Scaled average pooling   & \hphantom{00 @} $2 \times 2 \hphantom{\times 00}$ / 2 &          2  &    \num{336} & \hphantom{0}6 @ $14\times 14$    \\
    3  & Convolution              & 16 @ $5 \times 5 \times 6$ / 1            &  \num{2416} & \bf{\num{942400}} & 16 @ $10\times 10$ \\
    4  & Scaled average pooling   & \hphantom{00 @} $2 \times 2 \hphantom{\times 00}$ / 2 &          2  &   \num{1600} & 16 @ \hphantom{0}$5\times \hphantom{0}5$   \\
    5  & Fully Connected          & 120 neurons                      & \ensuremath{\boldmath\num{48120}} & \num{240000} & 120 \\
    6  & Fully Connected          & \hphantom{0}84 neurons           & \num{10164} &  \num{20580} & \hphantom{0}84 \\
    7  & Fully Connected (output) & \hphantom{0}10 neurons           &        850  &   \num{1730} & \hphantom{0}10 \\\midrule
    $\sum$ &                      &                                  & \num{61710} &\num{15144446}& \num{9118}\\
    \bottomrule
    \end{tabular}
\end{table}
\end{document}

What I tried

I've tried putting \num into math mode and \mathbf / \boldmath, \bf, \bfseries. Nothing worked.

4

Not perfectly aligned since bold fonts are wider than non bold. Bold fonts are achieved by siunitx package option detect-weight and use of S column type in third and forth column:

\documentclass[a4paper]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amssymb,amsmath}
\usepackage{booktabs, makecell}
\renewcommand\theadfont{\normalsize}
\usepackage[binary-units,group-separator={,}]{siunitx}
\sisetup{per-mode=fraction,
         binary-units=true,
         group-separator = {\,},
         range-phrase=-}
\DeclareSIUnit\pixel{px}
\DeclareSIUnit\float{float}
\DeclareSIUnit\floats{floats}

\usepackage{etoolbox}% <-- for bold fonts
\newcommand{\ubold}{\fontseries{b}\selectfont}% <-- for bold fonts
\robustify\ubold% <-- for bold fonts

\begin{document}

\begin{table}[ht]
    \centering
    \begin{tabular}{cll 
                    S[detect-weight,group-minimum-digits = 4,table-format=5.0]% <-- changed
                    S[detect-weight,group-minimum-digits = 4,table-format=8.0]% <-- changed
                    l}
    \toprule
\# &    Type                     
        &   \thead[tl]{Filters @\\ Patch size / stride} 
            &   {Parameters}    &   {FLOPs}   & Output size  \\\midrule
   &    Input                    
        &   &           0       &       0   & \hphantom{0}1 @ $32\times 32$    \\
1  &    Convolution              
        &   \hphantom{0}6 @ $5 \times 5 \times 1$ / 1 
            &       156         &   307 800 & \hphantom{0}\textbf{6}\,@\,$\mathbf{28\times 28}$    \\
2  &    Scaled average pooling   
        & \hphantom{00 @} $2 \times 2 \hphantom{\times 00}$ / 2 
            &        2          &       336 & \hphantom{0}6 @ $14\times 14$    \\
3  &    Convolution              
        &   16 @ $5 \times 5 \times 6$ / 1            
            &   2 416           & \ubold 942 400% <-- boldface
                                    & 16 @ $10\times 10$ \\
4  &    Scaled average pooling   
        &   \hphantom{00 @} $2 \times 2 \hphantom{\times 00}$ / 2 
            &        2          &     1 600 & 16 @ \hphantom{0}$5\times \hphantom{0}5$   \\
5  &    Fully Connected          
        &   120 neurons                      
            & \ubold 48 120% <-- boldface
                & 240 000   & 120 \\
6  &    Fully Connected          
        &   \hphantom{0}84 neurons           
                &       10 164  &   20 580  & \hphantom{0}84 \\
7  & Fully Connected (output) 
        &   \hphantom{0}10 neurons           
            &               850 &   1 730   & \hphantom{0}10 \\ \midrule
$\sum$  &   &   &        61 710 & 15 144 446& \num{9118}\\
    \bottomrule
    \end{tabular}
\end{table}
\end{document}

enter image description here

Note: use of \bf is depreciated for + 20 years.

  • The alignment problem can be solved, see egreg answer! – CarLaTeX Feb 4 '17 at 15:11
  • @CarLaTeX, I'm slightly confused: my definition of boldface fonts is not (so) different from egres's, but gives different result. I must deeply investigate this. – Zarko Feb 4 '17 at 15:17
  • There's always to learn from egreg :):):) – CarLaTeX Feb 4 '17 at 15:19
9

You can locally redefine \bfseries to use \fontseries{b}, rather than \fontseries{bx} as usual.

You can also avoid all those phantoms by using more columns.

\documentclass[a4paper]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amssymb,amsmath}
\usepackage{booktabs, makecell,etoolbox}
\renewcommand\theadfont{\normalsize}
\usepackage[binary-units,group-separator={,}]{siunitx}
\sisetup{per-mode=fraction,
         binary-units=true,
         group-separator = {\,},
         range-phrase=-}
\DeclareSIUnit\pixel{px}
\DeclareSIUnit\float{float}
\DeclareSIUnit\floats{floats}

\begin{document}

\begin{table}[ht]
\renewrobustcmd{\bfseries}{\fontseries{b}\selectfont}
\sisetup{detect-weight,mode=text,group-minimum-digits = 4}

\centering

\small
\addtolength{\tabcolsep}{-1.5pt}% decide at the end
\begin{tabular}{
  @{}
  c
  l
  S[table-format=3.0]@{\,}c@{\,}l@{\,}c@{\,}l
  S[table-format=5.0]
  S[table-format=8.0]
  S[table-format=4.0]@{\,}c@{\,}S[table-format=2.0]@{}>{${}}c<{{}$}@{}S[table-format=2.0]
  @{}
    }
\toprule
\# & Type
   & \multicolumn{5}{c}{\begin{tabular}[t]{l}Filters @\\ Patch size / stride\end{tabular}}
   & {Parameters}
   & {FLOPs}
   & \multicolumn{5}{c}{Output size}
\\
\midrule
  &    Input                    
       &&&&&   &           0       &       0   & 1 & @ & 32 & \times & 32    \\
1 &    Convolution
       & 6 & @ & $5 \times 5 \times 1$ & / & 1 
       & 156 & 307 800 & \bfseries 6 & @ & \bfseries 28 & \times & \bfseries 28 \\
2 &    Scaled average pooling   
       &&& $2 \times 2$ & / & 2
       & 2 & 336 & 6 & @ & 14 & \times & 14 \\
3 &    Convolution
       & 16 & @ & $5 \times 5 \times 6$ & / & 1
       & 2 416 & \bfseries 942 400 & 16 & @ & 10 & \times & 10 \\
4 &    Scaled average pooling
       &&& $2 \times 2$ & / & 2
       & 2 & 1 600 & 16 & @ & 5 & \times & 5 \\
5 &    Fully Connected
        & 120 & \multicolumn{4}{@{}l}{\ neurons}
        & \bfseries 48 120 & 240 000   & 120 \\
6 &    Fully Connected
        & 84 & \multicolumn{4}{@{}l}{\ neurons}
        & 10 164 & 20 580  & 84 \\
7 & Fully Connected (output)
        & 10 & \multicolumn{4}{@{}l}{\ neurons}
        & 850 & 1 730 & 10 \\ \midrule
$\sum$  &&&&&&& 61 710 & 15 144 446 & 9118\\
\bottomrule
\end{tabular}

\end{table}
\end{document}

enter image description here

  • Please, be so kind and explain me, where is the main difference between your and mine definition of boldface fonts used in table? – Zarko Feb 4 '17 at 15:20
  • @Zarko mode=text – egreg Feb 4 '17 at 15:23
  • thank you very much. my first test was with iwona condensed fonts, where differences between width boldface an ordinar characters was not so visible. so I didn't pay attention to mode=text in siunitx preset ... well, I learned something new! – Zarko Feb 4 '17 at 15:52

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.