我正在尝试画一个坚硬的球体,中心有一个圆柱形钻孔。我能做的最好的是:
这并不表明它是固体。我如何让它更坚硬的在外观上?
笔记:
- 代码改编自3D 绘图 TikZ 中的奇怪问题:缺少零件和轴
- 除了漂亮的彩色版本之外,我还需要能够以黑白形式复印它,因此如果您对此有任何建议,那也会很有帮助。
- 最终需要能够标记两个半径:球体的半径和圆柱体的半径。
代码:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[width=\textwidth,
samples=25,domain=0:360,y domain=-60:60,
xmin=-1.2,xmax=1.2,ymin=-1.2,ymax=1.2,zmin=-1.2,zmax=1.2,
xlabel={$x$},ylabel={$y$},zlabel={$z$},
axis lines=none]
\addplot3[surf,opacity=0.5]
({cos(x)*cos(y)}, {sin(x)*cos(y)}, {1.5*sin(y)});
\end{axis}
\end{tikzpicture}
\end{document}
答案1
我从 PGF 手册和选项中找到了环境colormap/blackwhite
的参数。axis
shader
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[width=\textwidth,
samples=25,domain=0:360,y domain=-60:60,
xmin=-1.2,xmax=1.2,ymin=-1.2,ymax=1.2,zmin=-1.2,zmax=1.2,
xlabel={$x$},ylabel={$y$},zlabel={$z$},
axis lines=none,
colormap/blackwhite]
\addplot3[surf,opacity=0.5,shader=interp]
({cos(x)*cos(y)}, {sin(x)*cos(y)}, {1.5*sin(y)});
\end{axis}
\fill[top color=white,bottom color=blue!10,middle color=gray,shading=axis,opacity=0.25] (5.25,2) circle (1.75cm and 0.6cm);% Bottom hole
\end{tikzpicture}
\end{document}
结果如下:
更新:
为了添加底部孔,使用 插入一些代码circle
。