Gefangenendilemma

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


Eduard
Forum-Guru
Forum-Guru
Beiträge: 348
Registriert: Sa 2. Mai 2015, 22:02

Gefangenendilemma

Beitrag von Eduard »

Wie bekomme ich es hin, dass die waagrechte Linie (\hline) nicht so lang ist?
\documentclass[12pt,a4paper,oneside,numbers=withenddot]{scrartcl}

\begin{document}
\begin{table}[h]
\renewcommand\arraystretch{2.5} % provide a bit taller rows
\centering
\caption{Gefangenendilemma}
\begin{tabular}{ll | c | c |}
&\multicolumn{1}{c}{}&\multicolumn{2}{c}{\textbf{Arbeitgeber}}\\[-2ex]
&\multicolumn{1}{c}{}
&\multicolumn{1}{c}{Factor1}&\multicolumn{1}{c}{Factor2}\\
\cline{3-4}
\multirow{2}{*}{\rotatebox{90}{\textbf{Arbeitnehmer}}}
&Factor1&5\qquad0&4\qquad7\\
\cline{3-4}
&Factor2&2\qquad3&2\qquad4\\
\hline
\end{tabular}
\end{table}
\end{document}
Zuletzt geändert von Eduard am Sa 27. Jul 2019, 17:07, insgesamt 1-mal geändert.

Stamm-

Auf Linie achten

Beitrag von Stamm- »

  • Kurze Version: Indem Du ein ordentliches Minimabeipiel lieferst.
  • Lange Version: Indem Du \hline durch \cline{2-4} (oder \cline{3-4}) ersetzt.
    \documentclass[fontsize=12pt,numbers=withenddot,ngerman]{scrartcl}
    \usepackage[T1]{fontenc}
    \usepackage{babel}
    
    \usepackage{multirow}
    \usepackage{graphicx}
    
    \usepackage{lmodern}
    \usepackage{microtype}
    
    \begin{document}
      \begin{table}[!htb]
        \renewcommand\arraystretch{2.5} % provide a bit taller rows
        \centering
        \caption{Gefangenendilemma}
        \begin{tabular}{llc|c|}
          & & \multicolumn{2}{c}{\textbf{Arbeitgeber}} \\[-2ex]
          & & \multicolumn{1}{c}{Faktor 1}&\multicolumn{1}{c}{Faktor 2} \\ \cline{3-4}
          \multirow{2}{*}{\rotatebox{90}{\textbf{Arbeitnehmer}}} & Faktor 1 & \multicolumn{1}{|c|}{5} & 4 \\ \cline{3-4}
          & Faktor 2 & \multicolumn{1}{|c|}{2} & 2 \\ \cline{2-4}
        \end{tabular}
      \end{table}
    \end{document}
Anmerkung(en):
  • Passenden Titel – soll heißen problembezogen – für ein Thema wählen!

Eduard
Forum-Guru
Forum-Guru
Beiträge: 348
Registriert: Sa 2. Mai 2015, 22:02

Beitrag von Eduard »

Gibt es die Möglichkeit auch Pfeile in der Tabelle zu zeichnen, um so zu zeigen, wie man zum Gleichgewicht kommt?


Stamm-

Pfeile als grafische Elemente

Beitrag von Stamm- »

Eduard hat geschrieben:Gibt es die Möglichkeit auch Pfeile in der Tabelle zu zeichnen, um so zu zeigen, wie man zum Gleichgewicht kommt?
Wo genau sollen diese Pfeile denn sein? Wo sind ihre Start- und Endpunkte? Als ersten Schritt kannst Du das hier aus Basis von »PGF/TikZ« und seiner Bibliothek »tikzmark« versuchen.
\documentclass[fontsize=12pt,numbers=withenddot,ngerman]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{babel}

\usepackage{multirow}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\usepackage{lmodern}
\usepackage{microtype}

\begin{document}
  \begin{table}[!htb]
    \renewcommand\arraystretch{2.5}
    \centering
    \caption{Gefangenendilemma}
    \begin{tabular}{llc|c|}
      & & \multicolumn{2}{c}{\textbf{Arbeitgeber}} \\[-3ex]
      & & \multicolumn{1}{c}{Faktor 1}&\multicolumn{1}{c}{Faktor 2} \\ \cline{3-4}
      \multirow{2}{*}{\rotatebox{90}{\textbf{Arbeitnehmer}}} & Faktor 1 & \multicolumn{1}{|c|}{5\tikzmark{a}} & 4 \\ \cline{3-4}
      & Faktor 2 & \multicolumn{1}{|c|}{2} & 2 \\ \cline{2-4}
    \end{tabular}

    \tikz[remember picture] \draw[-latex,overlay] (5,4) node[right] {Text} -- (pic cs:a);
  \end{table}
\end{document}

Eduard
Forum-Guru
Forum-Guru
Beiträge: 348
Registriert: Sa 2. Mai 2015, 22:02

Beitrag von Eduard »

Es sollte so aussehen.


\documentclass[fontsize=12pt,numbers=withenddot,ngerman]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{babel}

\usepackage{multirow}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\usepackage{lmodern}
\usepackage{microtype}

\begin{document}

\begin{table}[h]
\renewcommand\arraystretch{2.5} % provide a bit taller rows
\centering
\caption{Gefangenendilemma}
\hspace{-2.5cm}\begin{tabular}{ll | c | c |}
&\multicolumn{1}{c}{}&\multicolumn{2}{c}{\textbf{Arbeitgeber}}\\[-2ex]
&\multicolumn{1}{c}{}
&\multicolumn{1}{c}{hoher Einsatz}&\multicolumn{1}{c}{Shirking}\\
\cline{3-4}
\multirow{2}{*}{\rotatebox{90}{\textbf{Arbeitnehmer}}}
&hoher Einsatz&5\qquad \big \vert \qquad5&-4\qquad \big \vert \qquad20\\
\cline{3-4}
&Shirking&20\qquad \big \vert \qquad-4&2\qquad \big \vert \qquad2\\
\cline{3-4}
\end{tabular}
\end{table}

\end{document}
Dateianhänge
__.jpg
__.jpg (1.42 MiB) 3524 mal betrachtet

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Wahrscheinlich hat Dich nach fast 300 Beiträgen schon einmal jemand darauf hingewiesen: Wie hänge ich ein Bild an meine Frage?

Bild

Der Inhalt der Zellen in der Tabelle in Deiner Abbildung unterscheidet sich deutlich von dem Inhalt der Zellen in der Tabelle in Deinem Beispiel.
Dateianhänge
Eduard_Gefangenendilemma.jpg
Eduard_Gefangenendilemma.jpg (68.54 KiB) 3460 mal betrachtet

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Eventuell ist es dann doch einfacher gleich die ganze Tabelle mit TikZ zu erstellen. Eine Möglichkeit:


\documentclass[fontsize=12pt,numbers=withenddot,ngerman]{scrartcl} 
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{lmodern}
\usepackage{microtype}

\usepackage{tikz}
\usetikzlibrary{matrix}

\begin{document} 
\begin{table}[hb]
  \centering
  \captionabove{Gefangenendilemma}
  \begin{tikzpicture}
    \newcommand\mysize{4em}
    \tikzset{
      tabzelle/.style={inner sep=.5em,minimum width=\mysize}
    }
    \matrix[
      matrix of nodes,
      column sep=-\pgflinewidth,
      row sep=-\pgflinewidth,
      inner sep=0pt,
      nodes={tabzelle,minimum height=\mysize},
      column 1/.style={anchor=base west}
    ](m){
      hoher Einsatz&5&5&-4&20\\
      Shirking&20&-4&2&2\\
    };
    \path[draw]
      % Rahmen um Tabelle
      (m-2-2.south west)rectangle(m.north east)
      (m-2-2.north west)--(m.east)
      (m-1-3.north east)--(m-2-3.south east)
      % Rahmen um Zahlen
      (m-1-5)++(-1em,-1em)rectangle+(2em,2em)
      (m-2-2)++(-1em,-1em)rectangle+(2em,2em)
      (m-2-4)++(-1em,-1em)rectangle+({\mysize+2em},2em)
    ;
    \path[nodes={text depth=\dp\strutbox}]
      % kleine/kurze senkrechte Trennstriche
      foreach \c in {1-2,1-4,2-2,2-4}
        {(m-\c.base east)node[anchor=base]{$\big\vert$}}
      % Zeile oberhalb Tabelle
      (m-1-2.north east)node[above,tabzelle](t1){hoher Einsatz}
      (m-1-4.north east)node[above,tabzelle](t2){Shirking}
    ;
    \path[font=\bfseries\strut]
      % fette Beschriftung ganz oben und links
      (t1.north-|m-1-3.east)node[anchor=south](t3){Arbeitgeber}
      (m.west)node[anchor=south,rotate=90]{Arbeitnehmer}
    ;
    \begin{scope}[->]
      % Pfeile in Tabelle
      \draw(m-1-2.west)++(.5em,0)--+(0,-\mysize);
      \draw(m-1-2.north east)++(0,-.5em)--+({2*\mysize},0);
      \draw(m-1-4.south)++(0,1em)--+(0,-1.5em);
      \draw(m-2-2.south east)++(0,.5em)--+({2*\mysize},0);
    \end{scope}
    % Ausrichten der Tabelle (Bounding Box löschen und neu setzen)
    \pgfresetboundingbox
    \useasboundingbox(m-2-2.south west)rectangle(m.east|-t3.north);
  \end{tikzpicture}
\end{table}
\end{document}
Ergebnis:

Bild
Dateianhänge
gl_gefangenendilemma.png
gl_gefangenendilemma.png (10.16 KiB) 3466 mal betrachtet

Eduard
Forum-Guru
Forum-Guru
Beiträge: 348
Registriert: Sa 2. Mai 2015, 22:02

Beitrag von Eduard »

Super! Das ist perfekt! Vielen Dank!

Antworten