Wie kann ich bei einem Ich weiß, man könnte sowas wie Das muss doch exakt gehen. :) Ich habe hier mal einen Beitrag gesehen, wo sowas Ähnliches am Rande mit einer Modulo-Rechnung gemacht wurde (ich finde ihn aber nimmer). Öffne in Overleaf
%\documentclass[]{article} \documentclass[border=3pt, varwidth]{standalone} \usepackage{pgfplots} \pgfplotsset{width=7cm,compat=1.13} \pgfplotstableread{ 1 2 2 3 3 2 4 5 5 1 }\datatable \begin{document} \begin{tikzpicture} \begin{axis}[ymin=0, xtick=data, %ytick=data, % nur xy-Werte aus Tabelle anzeigen ] \addplot table [header=false, col sep=space,] {\datatable}; \end{axis} \end{tikzpicture} \end{document} gefragt 21 Jan '18, 20:18 cis |
Mir sind das eigentliche Ziel bzw. die Randbedingungen jetzt nicht klar. Davon hängt dann ab, wie viel Aufwand getrieben bzw. welche Kompromisse gemacht werden müssen. Du kannst beispielsweise den minimalen und den maximalen x-Wert in Deiner Tabelle ermitteln und diesen dann für Öffne in Overleaf
\documentclass[border=3pt]{standalone} \usepackage{pgfplotstable}% lädt auch pgfplots \pgfplotsset{width=7cm,compat=1.13} \pgfplotstableread{ 1 2 2 3 3 2 4 5 12 1 }\datatable \newcommand*\xmin{} \newcommand*\xmax{} \pgfplotstablegetelem{0}{[index]0}\of\datatable \edef\xmin{\pgfplotsretval} \edef\xmax{\pgfplotsretval} \pgfplotstableforeachcolumnelement{[index]0}\of\datatable\as\xvalue{% \pgfmathparse{\xvalue<\xmin?\xvalue:\xmin}\edef\xmin{\pgfmathresult}% \pgfmathparse{\xvalue>\xmax?\xvalue:\xmax}\edef\xmax{\pgfmathresult}% } \begin{document} \begin{tikzpicture} \begin{axis}[ ymin=0, xtick distance=2, xtickmin=\xmin, xtickmax=\xmax ] \addplot table [header=false, col sep=space,] {\datatable}; \end{axis} \end{tikzpicture} \end{document} Wenn Du nur die ungeraden Zahlen auf der Achse ausblenden willst, nicht aber die zugehörigen Ticks, dann geht Öffne in Overleaf
\documentclass[border=3pt]{standalone} \usepackage{pgfplots} \pgfplotsset{width=7cm,compat=1.13} \pgfplotstableread{ 1 2 2 3 3 2 4 5 5 1 6 2 7 1 8 3 9 1 10 2 11 3 12 1 }\datatable \begin{document} \begin{tikzpicture} \begin{axis}[ymin=0, xtick=data, %ytick=data, % nur xy-Werte aus Tabelle anzeigen xticklabel={\pgfmathparse{mod(\tick,2)==0?"\noexpand\axisdefaultticklabel":""}\pgfmathresult}, ] \addplot table [header=false, col sep=space,] {\datatable}; \end{axis} \end{tikzpicture} Fehlt jetzt aber zwischen drin ein x-Wert, dann fehlt auch der zugehörige Tick einschließlich des eventuellen Labels. In dem Beispiel passiert das an der y-Achse, wenn man Während man an der x-Achse vielleicht noch sicher sein kann, dass jeder Zwischenwert in der Koordinatenliste vorkommt, sind fehlende Werte auf der y-Achse vermutlich nicht ganz unwahrscheinlich. beantwortet 22 Jan '18, 11:11 esdd |
Für gerade kannst einfach mit Öffne in Overleaf
\documentclass[border=3pt, varwidth]{standalone} \usepackage{pgfplots} \pgfplotsset{width=7cm,compat=1.13} \pgfplotstableread{ 1 2 2 3 3 2 4 5 5 1 }\datatable \begin{document} \begin{tikzpicture} \begin{axis}[ymin=0, xtick distance=2, ] \addplot table [header=false, col sep=space,] {\datatable}; \end{axis} \end{tikzpicture} \end{document} beantwortet 21 Jan '18, 20:46 gast3 Ah ok, ich glaube das stößt leider mit
(21 Jan '18, 21:21)
cis
@cis Logisch.
verwendest.
(22 Jan '18, 09:10)
saputello
@saputello Das funktioniert für die Beispiele. Wenn sich der Bereich der x-Werte erhöht, z.B. auf den Bereich x=1 bis x=11 dann tauchen
(22 Jan '18, 10:44)
esdd
|