Hallo,
ich würde gern ein Kreisdiagramm analog zu dem aus der Tikz Doku (Seite 50) - siehe Anhang - erstellen.
Leider gibt es hierfür kein Codebeispiel, dass ich auf meine Bedürfnisse anpassen könnte.
Hat jemand eine Idee?
Hallo,
ich würde gern ein Kreisdiagramm analog zu dem aus der Tikz Doku (Seite 50) - siehe Anhang - erstellen.
Leider gibt es hierfür kein Codebeispiel, dass ich auf meine Bedürfnisse anpassen könnte.
Hat jemand eine Idee?
Ich meine, so etwas ähnliches mal in der Galerie von pgf/tikZ gesehen zu haben [1]. Da müsstest Du aber mal selbst nach suchen. In der aktuellen Ausgabe der Anleitung (Version 2.00) ist das von dir genannte Beispiel übrigens auf Seite 69 abgebildet.
[1] TikZ and PGF examples
MfG
Thorsten¹
TeX und LaTeX, Fragen und Antworten – TeXwelt
¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: openSUSE 13.1 (Linux 3.11.10), TeX Live 2013, TeXworks 0.5 (r1351)
Danke für den Hinweis. Ich habe mit die aktuelle Doku runtergeladen.
Ich habe mir die Sammlung nun mal angeschaut. Leider ist da kein vergleichbares Beispiel dabei :-(
Irgend eine andere Idee?
hier, aber latex->dvips->ps2pdf wählen.
HerbertCode:\documentclass{article} \usepackage{pstricks,multido} \SpecialCoor \makeatletter \def\psKreis#1#2#3{% \degrees[#3]\psset{linecolor=black!50} \pscircle{#1}\pscircle{!#1 #2 sub} \multido{\iA=0+1}{#3}{% \psline(#1;\iA)(!#1 #2 sub \iA\space\pst@angleunit PtoC )}% \gdef\WEinheit{#3}\gdef\psRI{#1 }\gdef\psRII{#2 }} \def\psData[#1]#2#3{% \degrees[\WEinheit]% \pst@cntc=#3 \advance\pst@cntc by -#2 \advance\pst@cntc by \@ne \psset{fillcolor=#1,fillstyle=solid} \multido{\iA=#2+1}{\the\pst@cntc}{% \pscustom[linecolor=-#1]{ \psline(\psRI;\iA)(! \psRI \psRII sub \iA\space \pst@angleunit PtoC ) \psarc(0,0){!\psRI \psRII sub}{\iA}{!\iA\space 1 add } \psline(!\psRI \psRII sub \iA\space 1 add \pst@angleunit PtoC )% (!\psRI \iA\space 1 add \pst@angleunit PtoC ) \psarcn(0,0){!\psRI}{!\iA\space 1 add }{\iA}} }% \psset{fillstyle=none}\pscircle{\psRI}\pscircle{!\psRI \psRII sub} \ignorespaces} \makeatother \begin{document} \begin{pspicture}(-4,-4)(4,4) \psKreis{4}{1}{50} \psData[green]{21}{23} \psData[green!70!black!90]{24}{32} \psData[black!80]{33}{42} \psData[red!80]{43}{50} \end{pspicture} \end{document}
Ein Ansatz für das Diagramm könnte folgendermaßen aussehen.
Ist abgestimmt auf 11pt Schriftgröße. Aber das lässt sich ja anpassen.Code:\begin{tikzpicture}[thick] \draw[line width=5mm,green!75!black](0,0) +(144:2.25) arc (144:165.6:2.25cm); \draw[line width=5mm,green!50!white](0,0) +(165.6:2.25) arc (165.6:230.4:2.25cm); \draw[line width=5mm,gray](0,0) +(230.4:2.25) arc (230.4:302.4:2.25cm); \draw[line width=5mm,red!50!white](0,0) +(302.4:2.25) arc (302.4:360:2.25cm); \foreach \d in {7.2,14.4,...,360} \draw[lightgray] (\d:2cm)--(\d:2.5cm); \draw[lightgray](0,0) circle (2cm) (0,0) circle (2.5cm); \node(0,0) {\parbox{3cm}{\centering Ratings given by 50 participants}}; \draw(0,0) +(0:2.8cm) node[anchor=west] {"`very bad"': 0 (0\%)}; \draw(0,0) +(331.2:2.5cm) node[anchor=north west] {"`bad"': 8 (16\%)}; \draw(0,0) +(266.4:2.8cm) node[anchor=north] {"`ok"': 10 (20\%)}; \draw(0,0) +(198:2.8cm) node[anchor=north east] {"`good"': 9 (18\%)}; \draw(0,0) +(154.8:2.8cm) node[anchor=south east] {"`very good"': 3 (6\%)}; \draw(0,0) +(72:2.8cm) node[anchor=south] {"`none"': 20 (40\%)}; \end{tikzpicture}
Geändert von localghost (04-04-2009 um 13:58 Uhr) Grund: Ergänzung.
TeX und LaTeX, Fragen und Antworten – TeXwelt
¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: openSUSE 13.1 (Linux 3.11.10), TeX Live 2013, TeXworks 0.5 (r1351)
Vielen Dank. Das ist genau das wonach ich gesucht habe!
Eine Frage habe ich noch. Kannst du mir die folgende Zeile ein wenig genauer erläutern?
Mich interessiert primär der hintere Abschnitt: (0,0) +(150:2.25) arc (150:172.5:2.25cm). Was steht wofür?Code:\draw[line width=5mm,green!75!black](0,0) +(150:2.25) arc (150:172.5:2.25cm);
Beachte, dass ich den Code korrigiert habe. Beim ersten Mal stimmte die Zuordnung und die Einteilung der Einheiten nicht ganz.
pgf/tikZ ist bei Kreisbögen etwas gewöhnungsbedürftig. Deswegen muss man sich vom Ausgangspunkt (0,0) zunächst in einem Winkel von 150° um 2.25cm entfernen. An diesem Punkt wird dann damit begonnen, den Kreisbogen von 150° bis 165.6° mit einem Radius von 2.25cm zu zeichnen. Alles weitere erklärt die aber die Anleitung ganz ausführlich.
Geändert von localghost (04-04-2009 um 14:20 Uhr) Grund: Ergänzung.
TeX und LaTeX, Fragen und Antworten – TeXwelt
¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: openSUSE 13.1 (Linux 3.11.10), TeX Live 2013, TeXworks 0.5 (r1351)
Hallo.
Ich fand das Ring-Beispiel so hübsch -- und vor allem überschaubar --, dass ich es als Inhalt für eine sehr simple Query-API genommen habe, die TikZ-Code anhand von Parametern erzeugt. Vielleicht interessiert es ja den ein oder anderen hier. Ist nix Wildes, aber ich wollte damit schon länger mal rumbasteln.
Gruß
Marc
Lesezeichen