我尝试使用 pgfplots 制作类似于的轮廓图pyplot.contourf
但我收到了错误:
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{filecontents}
\begin{filecontents}{testdata.dat}
9.000000000000000000e+02 3.000000000000000000e+01 2.808099937438964844e+01
9.000000000000000000e+02 3.500000000000000000e+01 2.836700057983398438e+01
9.000000000000000000e+02 4.000000000000000000e+01 2.881599998474121094e+01
1.000000000000000000e+03 3.000000000000000000e+01 2.826700019836425781e+01
1.000000000000000000e+03 3.500000000000000000e+01 2.820400047302246094e+01
1.000000000000000000e+03 4.000000000000000000e+01 2.856699943542480469e+01
1.100000000000000000e+03 3.000000000000000000e+01 2.783799934387207031e+01
1.100000000000000000e+03 3.500000000000000000e+01 2.806399917602539062e+01
1.100000000000000000e+03 4.000000000000000000e+01 2.830699920654296875e+01
\end{filecontents}
\pgfplotstableread{testdata.dat}\datatable
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=10cm,
height=5cm,
small,
colorbar
]
\addplot3[surf,shader=interp] table{\datatable};
\end{axis}
\end{tikzpicture}
\end{document}
当我使用时确实出现以下错误shader=interp
:
! LuaTeX error /usr/share/texmf- dist/tex/generic/pgfplots/lua/pgfplots.lua:27: attempt to call global 'unpack' (a nil value)
stack traceback:
/usr/share/texmf-dist/tex/generic/pgfplots/lua/pgfplots.lua:27: in function 'pgfplotsGetLuaBinaryStringFromCharIndices'
[string "\directlua "]:1: in main chunk.
\pgfplotsbinarytoluabinary ...CharIndices({#1}); }
答案1
LuaTeX 在 0.76 版本中做出了不兼容的改变。
pgfplots
我在1.9中添加了一个版本开关,允许pgfplots
使用 luatex 0.76 之后和 0.76 之前的两种不同且不兼容的语言。
因此,解决方案是将 pgfplots 升级到 1.9 版本或降级 lualatex。
答案2
这是从版本1.6
/开始修复的一个错误/不兼容性1.6.1
:
1.6.1:
- 修复不兼容 lualatex,shader=interp以及 german 包(1.6 版引入)
1.6:
- 增加了对分层图形的支持(主要用例:多个轴和层)
- 增加了对网格图中第二个色彩图的支持(网格/内部色彩图名称)
- 增加了对轴内范围的支持
- 轮廓图:增加了提供离散标签列表(网格/级别)的能力
- 空行被解释为数据图中的中断(自 1.4 版起未记录)
- 为“缩放模式 = 均匀缩放”添加了更多缩放选项(影响 3d 和 \addplot3 图形中的轴相等)
- 修复了 3d 中“轴相等”和“单位矢量比”的错误实现(向后兼容 2d,但不兼容 3d - 3d 实现完全是错误的)
- 修复 lualatex 与 shader=interp 不兼容的问题
- 修复了 \addplot3 图形方面的错误/添加了功能
- 修复错误:colorbar 不支持 ymode=log
- 修复了一些小错误
- 修复 clip=false、axis lines=none 的边界框计算
要么更新你的版本,要么编译pdflatex
(我不确定最后一个选项是否有效)