对立方图

对立方图

我正在尝试绘制对立平方,如下所示:

https://plato.stanford.edu/entries/square/image-a.jpg

到目前为止我已经生成了以下代码:

\documentclass{article}
\usepackage{tikz}
\begin{tikzpicture}
\draw (0, 0) rectangle (2, 2);
\path
(0, 0) node[below left] {\textit{Some S is P}}
(2, 0) node[below right] {\textit{No S is P}}
(2, 2) node[above right] {\textit{Some S is not P}}
(0, 2) node[above left] {\textit{Every S is P}}
;
\end{tikzpicture}
\end{document}``

但这不包含对角线,没有箭头,角落也没有字母标记。

如何在 Latex 中创建对立平方?

答案1

这是您正在寻找的东西吗?

\documentclass{standalone}

\usepackage{tikz}

\begin{document}
            \begin{tikzpicture}[
                corner/.style={font=\bfseries\large\sffamily}, 
                arrow/.style={->,>=stealth,thick},  
                label/.style={font=\small\sffamily,fill=white,midway},
                contra/.style={thick}
                ]
                \node[corner] (E) at (2,1)  {E};
                \node[corner] (O) at (2,-1)  {O};
                \node[corner] (I) at (-2,-1)  {I};
                \node[corner] (A) at (-2,1)  {A};
                
                \draw[arrow] (A) -- (I) node[label] {subalterns};
                \draw[arrow] (E) -- (O) node[label] {subalterns};
                \draw[contra] (A) -- (O);
                \draw[contra] (I) -- (E) node[label] {contradictories};
                \draw[contra] (A) -- (E) node[label] {contraries}; 
                \draw[contra] (I) -- (O) node[label] {contraries};
                
                \node[above of = A,yshift=-18,font=\footnotesize] {Every S is P};
                \node[above of = E,yshift=-18,font=\footnotesize] {No S is P};
                \node[below of = I,yshift=18,font=\footnotesize] {Some S is P};
                \node[below of = O,yshift=18,font=\footnotesize] {Some S is not P};
            \end{tikzpicture}
\end{document}

请注意,位置和 y 轴偏移是猜测的,应根据您的要求进行调整。字体类型和大小也是如此。

在此处输入图片描述

相关内容