左と上に「キャプション」がある表を作成するにはどうすればよいですか?

左と上に「キャプション」がある表を作成するにはどうすればよいですか?

次のような表を作成したいと思います (雑な写真で申し訳ありません)。

ここに画像の説明を入力してください

特に、下部にある標準の「表 1」キャプションに加えて、「入力」と「出力」という単語を配置するのが困難です。

ヒントがあればお願いします。私は tabularx または booktabs パッケージを使用しています。

答え1

John Kormylo が述べたように、私は\multicolumn{}{}{}上部のキャプションに を使用し、 を使用して位置を調整しました\raisebox{}{}。また、左のキャプションに を使用し、下部のキャプションにテーブル環境を使用し、と を\multirow[]{}{}{}使用して中央揃えし、環境を調整しました。そして、結果を以下に示します。 \centering\hspace*{}tabular

\documentclass[12pt,twoside,a4paper]{book}
\usepackage[left=.45in,right=.45in,top=.6in,bottom=.6in,headheight=14.5pt]{geometry}
\usepackage{array,multirow}

\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}

\begin{document}

\begin{table}
 \centering
\hspace*{-2cm}\begin{tabular}{C{1.2cm}cC{0.5cm}|c|c|c}
\multicolumn{5}{r}{\raisebox{2ex}{Output}} \\
 &&      & \bfseries X &  \bfseries Y &  \\ \cline{2-6}
  \multirow[]{2}{3cm}{Input} && \bfseries X  & \bfseries A & \bfseries B & \\  \cline{3-6}

  && \bfseries Y & \bfseries C & \bfseries D & \\ \cline{2-6}

  &&  & &  & \\ 

\end{tabular}
\caption{Blah Blah Blah}
\label{Table:1}
\end{table}    

 \end{document} 

ここに画像の説明を入力してください

答え2

ここに画像の説明を入力してください

のプリアンブルで列の書式を指定しないでください\tabularx。代わりに、特定の場所にのみ垂直線を描画するのに役立つ のようなものを使用する必要があります\multicolumn{1}{C|}{content}。また、列の幅を均等にする新しい列タイプを定義する必要があります\newcolumntype{C}{ >{ \arraybackslash \Centering } X }

完全なソースコードは次のとおりです。

\documentclass{scrartcl}

\usepackage{float}

\usepackage{tabularx}
\newcolumntype{C}{ >{ \arraybackslash \Centering } X }
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{ragged2e}
\usepackage{makecell}



\begin{document}

\begin{table}[]


    \caption{Caption}
    \label{table:1}

    % Center the table
    \centering

    % Stretch the table (vertically)
    \renewcommand{\arraystretch}{1.3}


    \begin{tabularx}{0.6\textwidth}{ >{\hsize=0.8\hsize}C C C C}



        & & \multicolumn{2}{c}{Output}
        \\


        & & \multicolumn{1}{|C|}{X} & \multicolumn{1}{C}{Y}
        \\
        \Xcline{2-4}{0.2mm}


        \multirow{2}{2cm}{\centering Input} & \multicolumn{1}{C|}{X} & \multicolumn{1}{C|}{A} & \multicolumn{1}{C}{B}
        \\
        \Xcline{2-4}{0.2mm}


        & \multicolumn{1}{C|}{Y} & \multicolumn{1}{C|}{C} & \multicolumn{1}{C}{D}


    \end{tabularx}



\end{table}


\end{document} 

余談ですが、「入力」は右側のキャプションではなく、最初の(非表示の)列の 2 行を占める必要がある 1 つのエントリです。

答え3

可能ですが、これはテーブルを表示する良い方法ではないと思います。

\documentclass{article}
\usepackage{multirow}

\begin{document}

\begin{table}[htp]

\centering

\setlength{\tabcolsep}{2\tabcolsep}% double the default

\begin{tabular}{@{}lc|c|c|}
  & \multicolumn{1}{c}{} & \multicolumn{2}{c}{Output} \\
  & & X & Y \\
  \cline{2-4}
  \multirow{2}{*}{Input} 
  & X & A & B \\
  \cline{2-4}
  & Y & C & D \\
  \cline{2-4}
\end{tabular}

\caption{Blah blah blah}

\end{table}

\end{document}

ここに画像の説明を入力してください

なぜ悪いのでしょうか? 「入力」と「出力」が何を指しているのか全く明確ではありません。

関連情報