我是 pstricks 的新手,在将它与 beamer 一起使用时遇到了一些问题。
所以我的问题是,我试图在投影仪框架中显示 3D 图。但是,由于某种原因,我无法理解该图,它被裁剪了。我已经通过更改调整大小框的宽度和高度值来玩了。我怎样才能展示整个情节?
另外,因为我正在调整图像大小,所以我想减少轴上出现的刻度数。但是,我尝试了Dx,Dy,Dz
3D 轴的选项,但这只会改变刻度之间的步长,而不会减少它们的数量。我的意思是,现在我为每个数字都得到了一个刻度:1、2、3、...、100,如果我更改选项,Dx=10
我会得到相同数量的刻度,但步长不同:10、20、30、...、1000。但是,我想要的是获得例如十个刻度:10、20、30、...、100,而不是获得一百个。有没有办法做到这一点?
\documentclass{beamer}
% For the figures
\usepackage[pdf]{pstricks}
\usepackage{auto-pst-pdf}
\usepackage{pst-node, pst-plot, pst-circ, pst-3dplot}
\usepackage{moredefs}
\begin{document}
\begin{frame}{3D}
\begin{center}
\resizebox{0.7\textheight}{0.7\textheight}{
\begin{pspicture}
\pstThreeDCoor[linecolor=black, IIIDticks,IIIDlabels,xMin=-20,xMax=20,yMin=-40, yMax=40,zMin=0,zMax=50]
\fileplotThreeD[linecolor=blue,plotstyle=line]{data.txt}
\end{pspicture}
}
\end{center}
\end{frame}
\end{document}
data.txt 是这里
答案1
我无法完全解决使用的问题PSTricks
,但如果您愿意接受其他选择,那么该pgfplots
软件包在这里可以很好地工作。
它默认为您的情节提供了一个极好的窗口,并且具有非常直观的方法,key=value
包括所请求的、、、、、、xmin
和、等等。xmax
ymin
ymax
zmin
zmax
xticks
yticks
我已经提供了一些选项来帮助您入门,但还有更多选项可供您使用 - 有关更多详细信息,请参阅文档。
\documentclass{beamer}
\usepackage{pgfplots}
\begin{document}
\begin{frame}{3D}
\begin{center}
\begin{tikzpicture}
\begin{axis}[
% view={120}{0}, % change this line as needed
width=6cm,
xlabel=$x$,
ylabel=$y$,
zlabel={$z$},
%xmin=-100,xmax=100,ymin=-100,ymax=100,zmin=-20,zmax=20 % change this line as appropriate
xtick={-10,0,10},
title=Your title here]
\addplot3+[no marks] table[col sep=comma] {data.txt};
\end{axis}
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
答案2
问题是pspicture
环境会超出其界限。即使您已使用 告诉它留在框内resizebox
。
您可以使用环境\begin{pspicture*}...\end{pspicture*}
,如果图片超出边界,该环境会自动剪辑图片。如果将其与环境结合起来,\psgrid
您可以进行一些实验,看看哪个是合适的查看窗口。
\documentclass{beamer}
% For the figures
\usepackage[pdf]{pstricks}
\usepackage{auto-pst-pdf}
\usepackage{pst-node, pst-plot, pst-circ, pst-3dplot}
\usepackage{moredefs}
\begin{document}
\begin{frame}{3D}
\begin{center}
\resizebox{0.7\textheight}{0.7\textheight}{
\begin{pspicture}(-10,-5)(10,50)
% \psgrid
\pstThreeDCoor[linecolor=black, IIIDticks,IIIDlabels,xMin=-20,xMax=20,yMin=-20, yMax=40,zMin=0,zMax=50]
\fileplotThreeD[linecolor=blue,plotstyle=line]{data.txt}
\end{pspicture}}
\end{center}
\end{frame}
\end{document}