Diskrete Graphen mit ausgelassenen/fehlenden Werten zeichnen

Diskrete Graphen mit ausgelassenen/fehlenden Werten zeichnen

Ich möchte ein Diagramm wie dort zeichnen (Aufzeichnen diskreter Signale), aber mit Punkten in den Werten, ich meine, gepunktete Werte bei x ohne Werte bei y, wie „keine Informationen“ (...). Ich habe den Code aus diesem Thread leicht geändert, aber es fällt mir schwer, „Punkte“ hinzuzufügen. Unten füge ich ein Beispiel dessen an, was ich will, und meinen Tex-Code mit seiner Ausgabe. Ich habe eine Stunde lang bei Google gesucht, aber ohne Ergebnisse.

Tex-Code

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usepackage{pgfplots}
\title{}
\author{}
\date{}

\begin{document}



\begin{filecontents}{data.dat}
 n   xn 
 0    10  
 1    9  
 2    5  
 3    2  
 4    -3
 5 -
 20    8
 21 3
\end{filecontents}


\begin{tikzpicture}
\begin{axis}
[%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    scale=1.3,
    axis x line=middle,
    axis y line=middle,
    every axis x label={at={(current axis.right of origin)},anchor=north west},
    every axis y label={at={(current axis.above origin)},anchor= north west},
    every axis plot post/.style={mark options={fill=black}},   
    xmin=0,
    xmax=20, 
    xtick={0,1, 2, 3,4,5,20, 21},    
    xticklabels={0,1, 2, 3, 4, .., 20, 21},
    xlabel={$\boldsymbol{x}$},
    ylabel={$\boldsymbol{z[n]}$},
    ytick={-5, 10},   
    ymin=-5,
    ymax=10,
]%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\addplot+[ycomb,black, very thick] table [x={n}, y={xn}] {data.dat};
\end{axis}
\end{tikzpicture}



\end{document}

Dies ist, was ich planen möchte. Bildbeschreibung hier eingeben

Dies ist die Tex-Ausgabe. Bildbeschreibung hier eingeben

Dies ist sozusagen meine Zeichnung auf der Ausgabe, die beschreibt, was ich darstellen möchte. Bildbeschreibung hier eingeben

Danke fürs Lesen.

Antwort1

Wie wäre es mit dem Hinzufügen

\path[draw,loosely dotted,thick,black](6,-1)--(19,-1);

innerhalb der Achsenumgebung?

Antwort2

Wie Ihr Problem gelöst werden kann, wird in der Antwort von @ukg (+1) gezeigt. Hier sind daher einige Themenvorschläge, wie Ihr MWE (meiner Meinung nach) verbessert werden kann:

\RequirePackage{filecontents}
    \begin{filecontents}{data.dat}
 n    xn
 0    10
 1     9
 2     5
 3     2
 4    -3
12    -3
13     2
14     5
20     8
21     3
25   nan
    \end{filecontents}

\documentclass[margin=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\begin{document}
    \begin{tikzpicture}
\begin{axis}[x=4mm,
    axis lines=middle,
    axis on top,
    xlabel=$x$,         
    ylabel=${z[n]}$,    
    label style={anchor=north east},
    xtick=data,
    tick label style = {fill=white, inner sep=2pt, font=\scriptsize}, 
    extra x ticks = {0},
    ymin=-5, ymax=10,
    enlarge x limits={0.1},
    enlarge y limits={0.2,upper},
    every axis plot post/.style={very thick},
            ]
\addplot [ycomb, mark=*] table [x=n, y=xn] {zdata.dat};
\draw[very thick, dash pattern=on 1pt off 3pt, 
      transform canvas={yshift=-1.5ex}
      ]    
        (6,0) -- (10,0)     % 6: position of 6th tick, 
                            % 10: position od 10th tick
        (16,0) -- (18,0);
\end{axis}
    \end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen