나는 전설 마커가 해당 지역을 채우는 전설을 만들기 위해 거짓말을 할 것입니다. 그러나 pgfplots
선의 두 곡선 사이를 채울 때 채우기 전에 정의되어 있으므로 이 작업을 수행하는 방법을 알 수 있습니다.
내 현재 MWE
:
\documentclass[border=0.5]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{mathtools,amsmath}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\usetikzlibrary{patterns}
\usepgfplotslibrary{fillbetween}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[
mark = none,
axis equal,
xmin = 0,
xmax = 2,
ymin = 0,
ymax = 2,
]
\addplot[pattern= dots, samples = 3, domain = 0:1, pattern color = red] {1}\closedcycle;
\addplot+[name path global = A, color = black, mark=none, domain = 1:2] {1};
\addplot+[name path global = B, color = black, mark=none, domain = 1:2] {2};
\addplot[pattern = north west lines, pattern color = green] fill between[of=A and B];
\draw [color = black] (axis cs:1,1) -- (axis cs:1,2);
\draw [color = black] (axis cs:2,1) -- (axis cs:2,2);
\filldraw [color = blue] (axis cs:1,1) circle (0.005);
\legend{ First electron, Other electron}
\end{axis}
\end{tikzpicture}
\end{document}
검은색 선을 사각형의 패턴으로 만들고 싶습니다.
미리 감사드립니다 ;-)
추신: 현재 범례 배치가 끔찍하다는 것을 알고 있지만 캡션으로 설명하고 싶다면 이동하는 것이 의미가 없습니다 ;-)
답변1
그럼 다음과 같은 작업을 하시겠습니까?
자세한 내용은 코드의 주석을 살펴보시기 바랍니다.
% used PGFPlots v1.15
\documentclass[border=5pt]{standalone}
\usepackage{pgfplots}
\usetikzlibrary{
patterns,
pgfplots.fillbetween,
}
\pgfplotsset{
compat=1.15,
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
no markers, % <-- changed from `mark=none'
axis equal,
xmin=0,
xmax=2,
ymin=0,
ymax=2,
]
\addplot [
pattern=dots,
samples=3,
domain=0:1,
pattern color=red,
area legend, % <-- added to change the type of legend symbol
] {1}
\closedcycle
;
\addplot [
draw=none, % <-- added, so it is invisible
forget plot, % <-- added, so it doesn't count for the legend
name path global=A,
domain=1:2,
] {1};
\addplot [
draw=none, % <-- added, so it is invisible
forget plot, % <-- added, so it doesn't count for the legend
name path global=B,
domain=1:2,
] {2};
\addplot [
pattern=north west lines,
pattern color=green,
draw=black, % <-- added to draw the frame
] fill between [of=A and B];
\filldraw [color = blue] (axis cs:1,1) circle (0.005);
\legend{
First electron,
Other electron
}
\end{axis}
\end{tikzpicture}
\end{document}