pgfplots 轴标签为 Edgeworth 盒

pgfplots 轴标签为 Edgeworth 盒

我正在绘制一个 Edgeworth 框,需要在图形的所有边上添加轴标签。Edgeworth 框的原点位于右上角(以及左下角),因此我需要翻转的轴标签(例如 9、8、7、6、5、4、3、2、1)。

这是我尝试过的代码,但实际上显示的不是我想要的数字10-1,等等。

我该如何修复这个问题?

         \foreach \x in {1,2,3,4,5,6,7,8,9}
            \draw (\x cm,228.772pt) -- (\x cm,226.772pt) node[anchor=south] {10-$\x$};
        \foreach \y in {1,2,3,4,5,6,7}
            \draw (285.465pt,\y cm) -- (283.465pt,\y cm) node[anchor=west] {8-$\y$};

在此处输入图片描述

答案1

\documentclass[11pt,a4paper]{article}
\usepackage{pgfplots}
\begin{document}
    \begin{tikzpicture}
        \foreach \x in {9,8,...,1}{
            \draw (9-\x,6.9) --++ (0,2mm) node[anchor=south] {\x};
        }
        \foreach \y in {7,6,...,1}{
            \draw (8.9,7-\y) --++ (2mm,0) node[anchor=west] {\y};
        }
    \end{tikzpicture}
\end{document}

可能更好 :

\documentclass[11pt,a4paper]{article}
\usepackage{pgfplots}
\begin{document}
    \begin{tikzpicture}
        \pgfplotsset{
            major grid style={dotted},
            axis line style={shorten >=-10pt},
            xmin=0, xmax=10,xtick={1,2,...,9},
            ymin=0, ymax=8,ytick={1,2,...,7},
        }
        \begin{axis}[
            grid=major,
            axis y line=left,
            axis x line=bottom,
            ]
            
        \end{axis}
        \begin{axis}[
            x dir=reverse,
            y dir=reverse,
            axis y line=right, grid=none,
            axis x line=top,
            ]
            
        \end{axis}
    \end{tikzpicture}
\end{document}

相关内容