我正在使用 Kiviat Diagram 绘制图形,相同的示例代码如下所示:
\begin{center}
\psframebox*[fillcolor=white]{
\begin{pspicture}(-6,-5)(5,5)
\psset{unit=1.2}
\psKiviat[rotate=0.5,yLabels={Skill3, Skill2, Skill1,Skill9}, labelsep=10pt]{4}{3}
\psKiviatTicklines[Dx=0.5,linecolor=black!30]{4}{3}
\psKiviatAxes[linecolor=black!30]{4}{3}
\psKiviatLine[linewidth=1pt,linecolor=black,fillstyle=solid,opacity=0.5,fillcolor=green]{\pskillc, \pskillb, \pskilla, \pskillj}
\multido{\rA=0.5+0.5,\iA=20+20}{5}{\uput[3](0,\rA){\iA}}
\end{pspicture}
}
\end{center}
三轴输出:
四轴输出:
有没有更好的方法来表示20
、40
、60
、的图例比例80
?100
是否可以将比例与第一轴对齐?
答案1
虽然真正的 Kiviat 图将意义赋予封闭区域,但我见过它们用于许多轴。因此,尽管有适当性评论,但以下是几个可能的解决方案:
使用pstricks-add
:
\documentclass{standalone}
\usepackage{pstricks-add}
\begin{document}
\begin{pspicture}(-6,-5)(5,5)
\psset{unit=1.2}
\psKiviat[rotate=0.5,yLabels={Skill3, Skill2, Skill1,Skill9}, labelsep=10pt]{4}{3}
\psKiviatTicklines[Dx=0.5,linecolor=black!30]{4}{3}
\psKiviatAxes[linecolor=black!30]{4}{3}
\psKiviatLine[linewidth=1pt,linecolor=black,fillstyle=solid,opacity=0.5,fillcolor=green]{1,0.5,2.5,2.5}
\multido{\rA=0.355+0.355,\iA=20+20}{5}{\uput[-110](\rA,\rA){\iA}}
\end{pspicture}
\end{document}
使用tkz-kiviat
:
\documentclass{standalone}
\usepackage{tkz-kiviat}
\usetikzlibrary{arrows}
\begin{document}
\begin{tikzpicture}[rotate=45]
\tkzKiviatDiagram[
radial style/.style={gray!50,-,shorten >=0.5cm},
radial=4,
gap=1,
lattice=5,
label space=1
]{Skill3,Skill2,Skill1,Skill9}
\tkzKiviatLine[
thick,
color=black,
mark=*,
mark options={black,thin},
fill=green!60,
opacity=.5
](2,1,5,5)
\tkzKiviatGrad[unity=20](0)
\end{tikzpicture}
\end{document}