いくつかの座標で囲まれた図の上限を塗りつぶす

いくつかの座標で囲まれた図の上限を塗りつぶす

下記のコードに示す図の上限を網掛けしたいです。ご協力いただければ幸いです。特定の関数はありませんが、線で結ばれた特定の座標があります。これらの座標で囲まれた上部の領域を網掛けしたいです。

\begin{figure}[h]
\centering
\begin{tikzpicture}[scale=0.7]
    \begin{axis}[
    xlabel={Policy Importance ($D$)},
    ylabel={Optimal voting Rule $r_{1}*(D)$},
    xmin=1, xmax=100,
    ymin=50, ymax=100,
    xtick={1,5, 10, 20, 30, 45, 55,70, 80, 90, 100},
    ytick={50,67,76,81,86,91,96,100},
    legend pos=outer north east,
    ymajorgrids=true,
    xmajorgrids=true,
    grid style=dashed,
    ]
    \addplot[
    color=blue,
    mark=*,
    ]
    coordinates {
        (1,51)(2,67)(3,76)(4,81)(6,86)(10,91)(20,96)(50,99)(100,100)
    };
    \end{axis}
    \end{tikzpicture}
\caption{Optimal supermajority rule as a function of policy
importance for continuous decisions.} 
\end{figure}

答え1

この特定のケースでは、領域が軸によって境界が定められているため、追加のプロット ディレクティブを使用できます。

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}[scale=0.7]
\begin{axis}[
xlabel={Policy Importance ($D$)},
ylabel={Optimal voting Rule $r_{1}*(D)$},
xmin=1, xmax=100,
ymin=50, ymax=100,
xtick={1,5, 10, 20, 30, 45, 55,70, 80, 90, 100},
ytick={50,67,76,81,86,91,96,100},
legend pos=outer north east,
ymajorgrids=true,
xmajorgrids=true,
grid style=dashed,
]
\addplot[shade,
top color=blue!10,
bottom color=blue,
draw=blue,
mark=*,
]
coordinates {
    (1,51)(2,67)(3,76)(4,81)(6,86)(10,91)(20,96)(50,99)(100,100)
} -| (rel axis cs:0,0);
\end{axis}
\end{tikzpicture}
\end{document}

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

関連情報