只是想知道这是否可以用 tikz 完成?我知道我应该至少提供 MWE,但我对 latex 还不熟悉,完全不知道从哪里开始。
MWE(由 HK 添加)
\documentclass[tikz,border=5mm]{standalone}
\usetikzlibrary{positioning,shadows}
\tikzset{
%% fill styles if needed
}
\begin{document}
\begin{tikzpicture}
\node (a) at (0,0) {a};
\end{tikzpicture}
\end{document}
答案1
这是一个粗略的近似值...我没有尝试复制 MWE 中的数字,也没有对细节进行微调。
代码如下:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{3d}
\usetikzlibrary{calc}
\usetikzlibrary{patterns}
\begin{document}
% \Yvalue{x-coordinate}{y-coordinate}{colour}
\newcommand\drawYvalue[3]{%
\draw[fill=#3!30](#1,0,1)--++(-1,0,0)--++(0,#2,0)--++(1,0,0)--cycle;
\draw[fill=#3!10](#1,#2,1)--++(-1,0,0)--++(0,0,-1)--++(1,0,0)--cycle;
\draw[fill=#3!15](#1,0,1)--++(0,0,-1)--++(0,#2,0)--++(0,0,1)--cycle;
}
\begin{tikzpicture}
\foreach \x in {0,4,8} {
\draw[pattern=north east lines, pattern color=blue!10]
(\x,0,0)--++(2,0,0)--++(0,6,0)--++(-2,0,0)--cycle;
}
\foreach \x in {0,2,4,6} {
\draw[blue!50](\x,0,2)--++(0,0,-2)--++(0,6,0);
}
\draw[blue!50](0,0,2)--++(0,6,0);
\foreach \y in {0,2,4,6} {
\draw[blue!50](10,\y,0)--++(-10,0,0)--++(0,0,2);
}
\foreach \y/\txt [count=\x]
in {3/Label 1, 4/Label 2, 1/Label 3, 5/Label 4,6/Label 5} {
\drawYvalue{2*\x-0.5}{\y}{\ifodd\x yellow\else green\fi}
\begin{scope}[canvas is zx plane at y=0]
\node[transform shape,rotate=180] at (3,2*\x-1)[anchor=west,align=right]{\txt};
\end{scope}
}
\end{tikzpicture}
\end{document}