Seite 1 von 1
Zweifarbige Knoten mit PS-Tricks
Verfasst: Sa 16. Apr 2016, 18:27
von JP92
Hallo,
ich habe folgendes Problem: ich möchte einen Knoten erstellen, der zur einen Hälfte zB blau und zur anderen Hälfte orange gefärbt ist.
Einfarbige Knoten mache ich momentan so:
\cnode[fillstyle = solid,fillcolor=blue](3.5,6.236){1.1}{a1}
Habe bis jetzt leider noch nichts passendes gefunden. Wäre super, wenn mir da jemand helfen könnte.
LG
Der entscheidende Schritt
Verfasst: Sa 16. Apr 2016, 19:12
von Stamm-
Zeig erst mal, was Du bisher versucht hast. Ich habe (nicht zum ersten Mal) keine Lust, mir ein komplettes Beispiel selbst zusammenzubauen, um daran Lösungsvorschläge zu testen. Diesem mikroskopischen Code-Fragment sieht man gerade mal ansatzweise an, dass Du möglicherweise »
pst-node« verwendest.
Verfasst: Sa 16. Apr 2016, 19:45
von JP92
\documentclass[a4paper,10pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{pstricks,pst-node,pst-plot}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{capt-of}
\usepackage{caption}
\usepackage[german]{babel}
\usepackage{fancyhdr}
\begin{document}
\begin{figure}[!b]
\psset{xunit=1cm,yunit=1cm,runit=1cm,%
nodesep=3pt,linewidth=1pt,nrot=:U}
\begin{pspicture}(9,9)
\cnode[linecolor=black](5.5,4){0.1}{a1}
\cnode*[linecolor=red](2.5,4){0.1}{a1}
\rput[bl](2,4){\rnode{A}{$s_1$}}
\cnode*[linecolor=orange](8.5,4){0.1}{a1}
\rput[bl](9,4){\rnode{A}{$\overline{s}_1$}}
\cnode*[linecolor=blue](5.5,1){0.1}{a1}
\rput[bl](5.5,0.5){\rnode{A}{$\overline{s}_3$}}
\cnode*[linecolor=red](5.5,7){0.1}{a1}
\rput[bl](5.5,7.5){\rnode{A}{$s_3$}}
\cnode[fillstyle = solid,fillcolor=blue](3.5,6.236){0.1}{a1}
\rput[bl](3,6.236){\rnode{A}{$s_2$}}
\cnode*[linecolor=red](7.5,1.764){0.1}{a1}
\rput[bl](8,1.764){\rnode{A}{$\overline{s}_2$}}
\cnode*[linecolor=orange](7.5,6.236){0.1}{a1}
\rput[bl](8,6.236){\rnode{A}{$s_4$}}
\cnode*[linecolor=blue](3.5,1.764){0.1}{a1}
\rput[bl](3,1.764){\rnode{A}{$\overline{s}_4$}}
\psline(2.5,4)(8.5,4)
\pscircle(5.5,4){3cm}
\end{pspicture}
\caption{Die Abbildung zeigt die Konstruktion aus Theorem $\ref{at0.1}$ für folgende Boolesche Formel $F =(x_1\vee \overline{x}_2 \vee x_3)\wedge (x_2\vee \overline{x}_3\vee \overline{x}_4)\wedge (\overline{x}_1\vee x_2 \vee x_4)$.\label{ap0.5}}
\end{figure}
\end{document}
Ich sehe grade, dass in meinem Code aus "8" und ")" ein Smiley gemacht wurde. Jetzt müsste es passen.
Zwei Varianten
Verfasst: Sa 16. Apr 2016, 20:03
von Stamm-
Minimal sieht anders aus. Und welchen Knoten Du als eingerückt bezeichnest weißt wohl nur Du selbst. Davon abgesehen sind alle Knoten gleich groß (bzw. klein) und ein farblicher Gradient wäre nicht zu erkennen. Hier mal eine kleine Demonstration mit »
pst-grad« und der Bibliothek »shadings« von »
PGF/TikZ«. Die Unterschiede in der Qualität sind offensichtlich.
\documentclass[11pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{auto-pst-pdf} % PSTricks-Code mit pdfLaTeX
\usepackage{pst-grad,pst-node,pstricks-add}
\usepackage{tikz}
\usetikzlibrary{shadings}
\begin{document}
\begin{pspicture}[showgrid=true](-2,-2)(2,2)
\cnode[fillstyle=gradient,gradbegin=blue,gradend=orange](0,0){1.1}{a1}
\end{pspicture}
%
\begin{tikzpicture}
\node[draw,circle,minimum size=2.2cm,top color=blue,bottom color=orange] at (0,0) {};
\end{tikzpicture}
\end{document}
Verfasst: Sa 16. Apr 2016, 20:18
von JP92
Vielen Dank erstmal für deine Mühe. Eingerückt ist das falsche Wort, aber der eine Knoten war im Code durch Absätze exponiert. Im Pdf sind Knoten groß genug, dass man was erkennen. Im Online-Editor hier ist das natürlich zu klein, da hast du Recht. Bei deinem Beispiel hat man einen Übergang von orange zu blau. Wenn es möglich wäre, wäre es jedoch gut, wenn der Knoten in der einen Hälfte komplett blau ist und in der anderen komplett orange, ohne Übergang. Hier kommt noch das Beispiel in kleinerer Form, hoffe, dass es was nützt.
LG
\documentclass[a4paper,10pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{pstricks,pst-node,pst-plot}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{capt-of}
\usepackage{caption}
\usepackage[german]{babel}
\usepackage{fancyhdr}
\begin{document}
\begin{figure}[!b]
\psset{xunit=1cm,yunit=1cm,runit=1cm,%
nodesep=3pt,linewidth=1pt,nrot=:U}
\begin{pspicture}(9,9)
\cnode[fillstyle = solid,fillcolor=blue](3.5,6.236){2.1}{a1}
\end{pspicture}
\end{figure}
\end{document}
Verfasst: Sa 16. Apr 2016, 21:12
von JP92
Hab es jetzt selber gelöst. Falls jemand nochmal die gleiche Frage haben sollte: Die Lösung ist pswedge zu benutzen
\documentclass[a4paper,10pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{pstricks,pst-node,pst-plot}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{capt-of}
\usepackage{caption}
\usepackage[german]{babel}
\usepackage{fancyhdr}
\begin{document}
\begin{figure}[!b]
\psset{xunit=1cm,yunit=1cm,runit=1cm,%
nodesep=3pt,linewidth=1pt,nrot=:U}
\begin{pspicture}(9,9)
\pswedge[fillstyle=solid,fillcolor=blue](3.5,6.236){2}{90}{270}
\pswedge[fillstyle=solid,fillcolor=orange](3.5,6.236){2}{270}{90}
\end{pspicture}
\end{figure}
\end{document}