在 pgfplot 中绘制十六进制数字

在 pgfplot 中绘制十六进制数字

我想从包含十六进制数(代表整数)的外部文本文件绘制图表,例如0x82104 列。它似乎pgfplot不能自动识别十六进制数。我知道可以将十六进制数转换为十进制数,例如,使用lualualatex有没有办法在不使用 的情况下将十六进制数转换为十进制数或在绘图前设置输入数字格式lua

答案1

PGF 数学解析器可以理解十六进制数。但是,\addplot table它不一定将数学解析器应用于输入数字(它只是尝试读取十进制数)。

为了激活内的数学解析器\addplot table,您可以使用y expr及其变体:

\documentclass{standalone}

\usepackage{pgfplots}

\pgfplotsset{compat=1.12}

\begin{document}

\begin{tikzpicture}
    \begin{axis}[
        minor y tick num=1,
    ]
    \addplot+[nodes near coords] table[x=x,y expr=\thisrow{y}] {
    x y
    0 0x8
    1 0xA
    2 0xF
    3 0x10
    };
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容