[Tex/LaTex] Hide ticks numbers / labels in a plot using PGF/TikZ datavisualization library

tikz-datavisualizationtikz-pgf

The datavisualization library in PGF/TikZ has many capabilities, but one thing I cannot find is how to remove ticks labels, keeping ticks themselves.

The scientific axes use such style (by default) for top and right axis.


For example, I would like to keep ticks, but remove labels in the following plot:

\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}
\begin{tikzpicture}
 \datavisualization 
  [scientific axes,visualize as line]
  data {
    x, y
    0, 7
    3, 6
    7, 0
  };
\end{tikzpicture}
\end{document}

https://www.overleaf.com/read/dztjfngnczmf


A similar question, but for pgfplots library Hide tick numbers in a TikZ/PGF axis environment.

Best Answer

One somewhat hacky version, simply not typesetting the labels:

\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}
 \begin{tikzpicture}
  \datavisualization 
  [scientific axes,visualize as line, all axes={ticks={tick typesetter/.code=}}]
  data {
    x, y
    0, 7
    3, 6
    7, 0
  };
 \end{tikzpicture}
\end{document}

An alternative solution that instead of using major ticks uses only minor ticks, which do not have labels:

\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}

\begin{tikzpicture}
 \datavisualization 
  [scientific axes,visualize as line, all axes={ticks={major={at={}}, minor={at={0,1, 2, 3, 4, 5,6,7}}}}]
  data {
    x, y
    0, 7
    3, 6
    7, 0
  };
\end{tikzpicture}
\end{document}

You might find more inspiration in section 77 of the PGF manual http://ctan.space-pro.be/tex-archive/graphics/pgf/base/doc/pgfmanual.pdf