这是我的第一篇帖子。我在写这篇文章时就解决了这个问题,所以我还是把它发了出来,希望它能帮到别人。
使用 MiKTeX 2.7 中的 pdflatex.exe 进行编译时,它可以正常工作。使用pdflatex.exe
MiKTeX 2.9 中的进行编译时,fill opacity
的属性\addplot
也可以顺利编译,但使用 pdf 阅读器打开时,阅读器会返回错误:[email protected] blablabla
。
为了解决这个问题(我不知道为什么),你应该避免使用包:pstricks
,,,。pst-node
pst-plot
pst-circ
这是我更正后的代码
\documentclass[addressstd,a4paper,10pt]{article}
\usepackage{tikz}
\usepackage{pgfplots}
%\usepackage{pstricks, pst-node, pst-plot, pst-circ}
\begin{document}
\begin{tikzpicture}
\begin{semilogxaxis}
\addplot [black,thick,ybar interval,fill=black,]
coordinates {(22.1,68.9) (44.2,74.4) (88.4,86.5)};
\addlegendentry{one};
\addplot [blue,thick,ybar interval,fill=blue,fill opacity=.5]
coordinates {(22.1,78.9) (44.2,64.4) (88.4,86.5)};
\addlegendentry{two};
\end{semilogxaxis}
\end{tikzpicture}
\end{document}
你知道为什么吗?
答案1
请按如下方式使用:
[...]
\usepackage{ifpdf}
\usepackage{tikz}
\usepackage{pgfplots}
\ifpdf\else
\usepackage{pstricks,pst-node,pst-plot,pst-circ}
\psset{pgffunctions}
\fi
\begin{document}
[...]
那么它将与pdflatex --shell-escape
、latex->dvips->ps2pdf
和 一起工作xelatex
答案2
由于我没有使用 pstricks、pst-node 等,但仍然遇到了同样的问题,我发现以下答案可以为观察到的问题提供根本解释:
简而言之,将以下代码片段移至其余包的前面,解决了 Adobe Reader 在查看使用不透明度的 pgfplot 时报告错误的问题:
\usepackage{pgfplots}
\makeatletter
\@namedef{[email protected]}{}
\makeatother
%remaining packages