Как масштабировать ось Y в столбчатой ​​диаграмме (tikz, pgfplots)?

Как масштабировать ось Y в столбчатой ​​диаграмме (tikz, pgfplots)?

У меня есть фигурка в виде бруска, у которой некоторые бруски больше других, как показано ниже:

введите описание изображения здесь

Моя проблема в том, что я не вижу маленькие полоски (например, точку 2 или 4). Можно ли изменить некоторые параметры для масштабирования оси Y?

Мой код приведен ниже:

\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{patterns}

\begin{document}

\begin{figure}[ht!]
  \centering
\resizebox{.65\textwidth}{!}{%
    \begin{tikzpicture}
      \begin{axis}[
        xlabel={Number},
        ylabel={Percentage},
        set layers,
        ybar=1.2pt,
        bar width=6pt,
        symbolic x coords={2,4,6,8,10},
        grid=both,
        ymin=0,
        samples=5,
        legend cell align=left,
        ymax=1,
        x label style={font=\footnotesize},
        y label style={font=\footnotesize},
        ticklabel style={font=\footnotesize},
        legend style={at={(0,.82)},anchor=west,font=\scriptsize},
        ]
        %% 
        \addplot[black,fill=red,postaction={pattern=north east lines}] coordinates {
          (2, 0.005) (4, 0.001) (6, 0.2) (8, 0.2) (10, 0.4)
        };
        \addlegendentry{A}
        %% 
        \addplot[black,fill=brown,postaction={pattern=north west lines}] coordinates {
          (2, 0.002) (4, 0.004) (6, 0.2) (8, 0.5) (10, 0.8)
        };
        \addlegendentry{B}
        %% 
        \addplot[black,fill=violet,postaction={pattern=crosshatch}] coordinates {
          (2, 0.2) (4, 0.007) (6, 0.4) (8, 0.7) (10, 0.9)
        };
        \addlegendentry{C}
      \end{axis}
    \end{tikzpicture}
}
  \caption{The percentage.}
  \label{figure:1}
\end{figure}
\end{document}

решение1

демо

\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{patterns}

\pgfplotsset{compat=newest}

\begin{document}

\begin{figure}[ht!]
  \centering
\resizebox{.65\textwidth}{!}{%
    \begin{tikzpicture}
      \begin{semilogyaxis}[
        xlabel={Number},
        ylabel={Percentage},
        set layers,
        ybar=1.2pt,
        bar width=6pt,
        symbolic x coords={2,4,6,8,10},
        grid=both,
        samples=5,
        legend cell align=left,
        ymax=1,
        x label style={font=\footnotesize},
        y label style={font=\footnotesize},
        ticklabel style={font=\footnotesize},
        legend style={at={(0,.82)},anchor=west,font=\scriptsize},
        log origin y=infty
        ]
        %% 
        \addplot[black,fill=red,postaction={pattern=north east lines}] coordinates {
          (2, 0.005) (4, 0.001) (6, 0.2) (8, 0.2) (10, 0.4)
        };
        \addlegendentry{A}
        %% 
        \addplot[black,fill=brown,postaction={pattern=north west lines}] coordinates {
          (2, 0.002) (4, 0.004) (6, 0.2) (8, 0.5) (10, 0.8)
        };
        \addlegendentry{B}
        %% 
        \addplot[black,fill=violet,postaction={pattern=crosshatch}] coordinates {
          (2, 0.2) (4, 0.007) (6, 0.4) (8, 0.7) (10, 0.9)
        };
        \addlegendentry{C}
      \end{semilogyaxis}
    \end{tikzpicture}
}
  \caption{The percentage.}
  \label{figure:1}
\end{figure}
\end{document}

Связанный контент