Вот мой код в Tikz
формате изображения, и я внес много изменений, чтобы повернуть его, включая использование какого-то пакета и изменение значений угла, но он все еще не вращается, я не знаю, в чем проблема.
\documentclass[border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.8}
\usepackage{tikz, tikz-3dplot}
\begin{document}
\tdplotsetmaincoords{20}{45}
\begin{tikzpicture}[scale=1]
\tdplotsetrotatedcoords{20}{30}{90}
\begin{axis}[
axis lines=center,
axis on top,
xlabel={$x$}, ylabel={$y$}, zlabel={$z$},
view/h=110,
title={\tiny $\frac{x^2}{a^2}+\frac{y^2}{b^2}=1$, Rotate Please},
]
\addplot3[
surf,
z buffer=sort,
mesh/interior colormap={purplegreen}{color=(purple) color=(green)},
colormap={periodic}{%
color=(blue)
color=(yellow)
color=(orange)
color=(red)
color=(orange)
color=(yellow)
color=(blue)},
domain=-2:2, domain y=0:360,
samples=20, samples y=20,
variable=\u, variable y=\v,
point meta=u,
]
({2 * cos(v)},{3 * sin(v)},{u});
\end{axis}
\end{tikzpicture}
\end{document}
Также я не хочу, чтобы цифры отображались на оси. Какие изменения мне следует внести?
Заранее спасибо.
решение1
Давайте сядем и посмотрим, какие есть варианты:
Прежде всего,НЕТ, вы не можете использовать \tdplotxxx
для вращения axis
. Первый из , tikz-3dplot
а последний из pgfplots
. Они в основном работают независимо. (не по теме: раньше я думал tikz-3dplot
> pgfplots
; Но теперь я знаю pgfplots
>> tikz-3dplot
.)
Следующие виды использования толькоpgfplots
Если вы хотите вращать только точки данных, а не ось, то есть фаза,
pgfplots
которая позволяет вам изменять точки данных. Поискfilter points
в руководстве.Если вы хотите вращать точки данных вместе с осью, то вы можете использовать
view={12}{34}
вместе сrotate=56
(2D-вращение). Сочетание этих двух должно дать вам все возможные 3D-вращения.Если вы хотите повернуть только ось, объедините два предыдущих метода.
Если вы хотите придерживаться tikz-3dplot
, то вам придется сдаться axis
.