¿Por qué todas mis etiquetas/estilos no muestran nodos pequeños?

¿Por qué todas mis etiquetas/estilos no muestran nodos pequeños?

No puedo entender qué error estoy cometiendo, pero no puedo establecer el tamaño de fuente global, por ejemplo, \tinypara los nodos de etiquetas. Lo intenté every label/.style={font=\tiny}. Parece funcionar para las etiquetas del eje pero no para el nodo de etiqueta. Mi MWE:

\documentclass[12pt]{article}
\usepackage[dvips]{graphicx,color}
\usepackage{wasysym}

\usepackage{pgfplots}
\usepackage{tikz}
\usepackage{xcolor}

\usetikzlibrary{arrows,plotmarks}
\usetikzlibrary{intersections,positioning}

\begin{document}
\pgfplotsset{
  standard/.style={%Axis format configuration
    axis x line=middle,
    axis y line=middle,
    enlarge x limits=0.15,
    enlarge y limits=0.15,
    every label/.style={font=\tiny},
    every axis x label/.style={at={(current axis.right of origin)},anchor=north west},
    every axis y label/.style={at={(current axis.above origin)},anchor=north east},
   every axis plot post/.style={mark options={fill=black}}
    }
 }
\begin{figure}[h!]
\begin{center}
\begin{tikzpicture}[baseline=(current bounding box.center)]
    \begin{axis}[axis lines=middle, xtick={-1,0,1},
      xticklabels={-1, 0, 1},
      extra x tick style={
      xticklabel style={yshift=0.5ex, anchor=south}},
      xmin=-4,xmax=4, ytick={\empty}, yticklabels={}, 
      ymin=-2, ymax=2, axis on top,
      enlarge y limits=0.35,
      width=6cm,
      xlabel={$n$}, x label style={anchor=north},
      ylabel={$x[n]$}, y label style={anchor=west}]
      \addplot+[ycomb,black,thick] plot coordinates
      {(-1,1) (0,2) (1,1)};
      \node[anchor=south west] at (axis cs:0,2) {$2$};
      \node[anchor=south east] at (axis cs:-1,1) {$1$};
      \node[anchor=south west] at (axis cs:1,1) {$1$};
      \end{axis}
      \end{tikzpicture}%
      \hspace*{3mm} {\Huge\pointer} \hspace*{3mm}%
      \begin{tikzpicture}[baseline=(current bounding box.center)]
      \pgfplotsset{every tick label/.append style={font=\tiny},
        every label/.append style={font=\tiny}}
      \begin{axis}[axis lines=middle, xtick={-3,-2,...,3},
        xticklabels={{}, {}, {}, 0, 1, 2, 3},
        extra x ticks={-2,-1},
        extra x tick labels={$-3$,$-2$,$-1$},
        extra x tick style={
          xticklabel style={yshift=0.5ex, anchor=south}},
        xmin=-4,xmax=4, ytick={\empty}, yticklabels={}, 
        ymin=-2, ymax=2, axis on top,
        enlarge y limits=0.35,
        width=6cm,
        xlabel={$n$}, x label style={anchor=north},
        ylabel={$y[n]$}, y label style={anchor=west}]
        \addplot+[ycomb,black,thick] plot coordinates
        {(-3,0) (-2,-1) (-1,-2) (0,0) (1,2) (2,1) (3,0)};
        \node[anchor=north] at (axis cs:-2,-1) {$-1$};
        \node[anchor=north] at (axis cs:-1,-2) {$-2$};
        \node[anchor=west] at (axis cs:1,2) {$2$};
        \node[anchor=west] at (axis cs:2,1) {$1$};
      \end{axis}
    \end{tikzpicture}%
  \end{center}
\end{figure}
\end{document}

ingrese la descripción de la imagen aquí

Respuesta1

Eso tiene varias causas, pero la razón principal es que notenercualquier "nodo de etiqueta" en el sentido de TikZ. Los nodos de etiqueta son nodos que se aplican a los propios nodos como \node [label=above:I am a label node] {I am the main node};. Los nodos que está utilizando son simplemente nodos "normales".

Dijo que se le puede ocurrir una idea para luego indicar, por ejemplo, every node/.append style={font=\tiny,green}(en el \tikzset), pero debido a quetodoque contiene algo de texto es un nodo, eso sería mucho más de lo que deseas. Pruébalo para ver qué pasa.

Me permití modificar un poco tu MWE y reordenar algunas cosas. Luego comenté todo lo que es "un poco extraño"/"no sencillo", en caso de que también quieras aprender otras cosas además de la pregunta del "nodo pequeño".

Si solo le interesan los "nodos pequeños", busque los bloques que están rodeados por líneas discontinuas.

Para obtener más detalles, consulte los comentarios en el código.

\documentclass[border=5pt]{standalone}
\usepackage{pgfplots}
% -----------------------------------------------------------------------------
% one possibility to show tiny labels is to define a new style which you
% apply later to the corresponding nodes
\tikzset{
    Label/.style={
        font=\tiny,
        red,
    },
}
% -----------------------------------------------------------------------------
%\pgfplotsset{
%    % this (whole) style isn't *used* in the following tikzpictures/axis
%    % environments so it isn't needed here
%    standard/.style={%Axis format configuration
%        axis x line=middle,
%        axis y line=middle,
%        enlarge x limits=0.15,
%        enlarge y limits=0.15,
%        every label/.style={font=\tiny},
%        every axis x label/.style={
%            at={(current axis.right of origin)},
%            anchor=north west,
%        },
%        every axis y label/.style={
%            at={(current axis.above origin)},
%            anchor=north east,
%        },
%        every axis plot post/.style={
%            mark options={fill=black},
%        },
%    },
%}
\begin{document}
\begin{tikzpicture}[
%    % in this case this statement is not needed
%    baseline=(current bounding box.center),
]
    \begin{axis}[
        axis lines=middle,
        xtick={-1,0,1},
%        % you don't need this, because the tick labels are identical to the ticks
%        xticklabels={-1, 0, 1},
%        % there are no `extra x ticks` so you don't need this as well
%        extra x tick style={
%            xticklabel style={yshift=0.5ex, anchor=south},
%        },
        xmin=-4,
        xmax=4,
        ytick={\empty},
%        % since you don't state `ytick's you don't to provide corresponding labels ...
%        yticklabels={},
        ymin=-2, ymax=2,
        axis on top,
        enlarge y limits=0.35,
        width=6cm,
        xlabel={$n$},
        ylabel={$x[n]$},
        x label style={anchor=north},
        y label style={anchor=west},
    ]
        \addplot+ [ycomb,black,thick] coordinates {
            (-1,1) (0,2) (1,1)
        };
        \node [anchor=south west] at (axis cs:0,2)  {$2$};
        % ---------------------------------------------------------------------
        % as stated earlier there are plenty of ways to achieve what you want
        % to do, here are some possibilities
        %
        % 1. provide what you need directly to the node
        \node [
            anchor=south east,
            font=\tiny,
            red,
        ] at (axis cs:-1,1) {$1$};
        % 2. apply the created style directly to the node
        \node [
            anchor=south west,
            Label,
        ] at (axis cs:1,1)  {$1$};
    \end{axis}
\end{tikzpicture}

\begin{tikzpicture}[
%    baseline=(current bounding box.center),
]
        \pgfplotsset{
            every tick label/.append style={font=\tiny},
%            % this style is a TikZ style for "labels of nodes" and not nodes that are labels,
%            % that is why you don't see any changing font sizes
%            % said that, it is also not needed here
%            every label/.append style={font=\tiny},
        }
    \begin{axis}[
        axis lines=middle,
        xtick={-3,-2,...,3},
        % as you can see the zero isn't shown, although you stated it here
        % this is because of the key `hide obscured x ticks' which is true by default when
        % `axis lines' are set to `middle' or the alias `center'
        xticklabels={{}, {}, {}, 0, 1, 2, 3},
        % also this is strange. You state the ticks at positions -2 and -1, ...
        extra x ticks={-2,-1},
        % ... but apply the numbers -3 and -2 to them. Is that intended?
        extra x tick labels={$-3$,$-2$,$-1$},
        extra x tick style={
            xticklabel style={yshift=0.5ex,anchor=south}, },
        xmin=-4, xmax=4,
        ytick={\empty},
        yticklabels={},
        ymin=-2, ymax=2,
        axis on top,
        enlarge y limits=0.35,
        width=6cm,
        xlabel={$n$},
        ylabel={$y[n]$},
        x label style={anchor=north},
        y label style={anchor=west},
    ]
        \addplot+ [ycomb,black,thick] plot coordinates
            {(-3,0) (-2,-1) (-1,-2) (0,0) (1,2) (2,1) (3,0)
        };
        % ---------------------------------------------------------------------
        % 3. but you could also scope the nodes and apply the style of the
        %    nodes
        \begin{scope}[
            font=\tiny,
            red,
        ]
            \node [anchor=north] at (axis cs:-2,-1) {$-1$};
            \node [anchor=north] at (axis cs:-1,-2) {$-2$};
        \end{scope}
        % 3. or of course apply the style in the scope
        \begin{scope}[
            Label,
        ]
            \node [anchor=west]  at (axis cs:1,2)   {$2$};
            \node [anchor=west]  at (axis cs:2,1)   {$1$};
        \end{scope}
        % ---------------------------------------------------------------------
    \end{axis}
\end{tikzpicture}
\end{document}

imagen que muestra el resultado del código anterior

información relacionada