5

enter image description here enter image description here

Shouldn't \resizebox resize the label along with the whole picture? How can I avoid the label being put above the arrow (other than rotating the image, which I don't want to do)?

\resizebox{12cm}{!}{
\begin{tikzpicture}
\tkzKiviatDiagram[label distance=.5cm]{{Kolerikus},{Szangvinikus},{Melankolikus},{Flegmatikus}}
\tkzKiviatLine[thick,color=blue,mark=none,
               fill=blue!20,opacity=.5](5.0,2.30769230769,4.66666666667,4.16666666667
    )
\tkzKiviatGrad[prefix=,unity=10,suffix=\ \%](1)
\end{tikzpicture}
}
\caption{Vérmérséklet}
\end{figure}
  • 2
    Why the downvote? If you are going to downvote something, please provide a reason so that the OP has a chance to correct the issue. – Peter Grill Apr 18 '13 at 21:03
  • 1
    While code snippets are useful in explanations, it is always best to compose a fully compilable MWE that illustrates the problem including the \documentclass and the appropriate packages so that those trying to help don't have to recreate it. – Peter Grill Apr 18 '13 at 21:03
  • Yes, it should. Doesn’t it? Have you tried your example without the \resizebox? Is the label still position over the arrow? Please provide a fully compilable MWE (without \resizebox if that isn't part of the problem). For example, I get another picture than yours with a standard preamble. By the way label distance is not a style that affects the outcome of the \tkzKiviatDiagram macro. Maybe you meant label space? – Qrrbrbirlbel Apr 18 '13 at 21:18
4

I don’t get that faulty output with the following standard preamble (with and without \resizebox).

But as the label style is pre-defined with text width=2cm the horizontal spacing for Melankolikus and Kolerikus will be different as Kolerikus is thinner and has thus more space to its arrow. I suggest (at least in this case) to use a a fixed spacing with the following adjustment:

\pgfkeys{/kiviat/label style/.style={align=center,anchor=180+360/\tkz@kiv@radial*\rang}}

The tikzscale package help with scaling a TikZ picture to a fixed width but without re-sizing font sizes and line widths. Unfortunately (?) the TikZ picture then has to be provided in an extra file with the extension .tikz.

(The standard article class will give a overfull hbox warning as the \textwidth is slightly smaller than 12cm. It is probably advisable to use width=\textwidth either way.)

Code

\documentclass{article}
\begin{filecontents}{\jobname.tikz}
\begin{tikzpicture}
\tkzKiviatDiagram[label space=.5]{Kolerikus,Szangvinikus,Melankolikus,Flegmatikus}
\tkzKiviatLine[thick,color=blue,mark=none,
               fill=blue!20,opacity=.5](5.0,2.30769230769,4.66666666667,4.16666666667)
\tkzKiviatGrad[prefix=,unity=10,suffix=\ \%](1)
\end{tikzpicture}
\end{filecontents}
\usepackage{tkz-kiviat,tikzscale}
\usetikzlibrary{arrows}
\makeatletter
\pgfkeys{/kiviat/label style/.style={align=center,anchor=180+360/\tkz@kiv@radial*\rang}}
\makeatother
\begin{document}
\includegraphics[width=12cm]{\jobname.tikz}
\end{document}

(Unresized) Output

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.