Hallo, ich möchte einen Quader im 3D-Raum plotten, dem an spezifischen Stellen (Ecken und Kantenmittelpunkten) eine Farbe über eine numerische Vorgabe zugewiesen soll. Zwischen Ecken und Kantenmittelpunkten soll interpoliert werden. Über eine Skala am Rand der Grafik soll die Farbe zum entsprechenden numerischen Wert angegeben werden. Das Datenfile was ich dazu vorliegen habe, sieht wie folgt aus: Open in writeLaTeX
-.7745966692414835 -.7745966692414835 -.7745966692414835 .1714677640603567 -.7745966692414835 -.7745966692414835 .0000000000000000 .2743484224965707 -.7745966692414835 -.7745966692414835 .7745966692414835 .1714677640603567 -.7745966692414835 .0000000000000000 -.7745966692414835 .2743484224965707 -.7745966692414835 .0000000000000000 .0000000000000000 .4389574759945131 -.7745966692414835 .0000000000000000 .7745966692414835 .2743484224965707 -.7745966692414835 .7745966692414835 -.7745966692414835 .1714677640603567 -.7745966692414835 .7745966692414835 .0000000000000000 .2743484224965707 -.7745966692414835 .7745966692414835 .7745966692414835 .1714677640603567 .0000000000000000 -.7745966692414835 -.7745966692414835 .2743484224965707 .0000000000000000 -.7745966692414835 .0000000000000000 .4389574759945131 .0000000000000000 -.7745966692414835 .7745966692414835 .2743484224965707 .0000000000000000 .0000000000000000 -.7745966692414835 .4389574759945131 .0000000000000000 .0000000000000000 .0000000000000000 .7023319615912209 .0000000000000000 .0000000000000000 .7745966692414835 .4389574759945131 .0000000000000000 .7745966692414835 -.7745966692414835 .2743484224965707 .0000000000000000 .7745966692414835 .0000000000000000 .4389574759945131 .0000000000000000 .7745966692414835 .7745966692414835 .2743484224965707 .7745966692414835 -.7745966692414835 -.7745966692414835 .1714677640603567 .7745966692414835 -.7745966692414835 .0000000000000000 .2743484224965707 .7745966692414835 -.7745966692414835 .7745966692414835 .1714677640603567 .7745966692414835 .0000000000000000 -.7745966692414835 .2743484224965707 .7745966692414835 .0000000000000000 .0000000000000000 .4389574759945131 .7745966692414835 .0000000000000000 .7745966692414835 .2743484224965707 .7745966692414835 .7745966692414835 -.7745966692414835 .1714677640603567 .7745966692414835 .7745966692414835 .0000000000000000 .2743484224965707 .7745966692414835 .7745966692414835 .7745966692414835 .1714677640603567 Hier stehen die erste, zweite und dritte Spalte für die Koordinaten x,y und z. Die vierte Spalte steht für eine Intensität, die als numerischer Wert für die Farbkodierung dienen soll (bspw. grau bis blau). Vielleicht hat jemand einen Tipp!? Bisher hatte ich an folgendes gedacht, allerdings ist die Farbzuordnung hier der z-Achse vorbehalten: Open in writeLaTeX
\documentclass{standalone} \usepackage{pgfplots} \begin{document} \begin{tikzpicture} \begin{axis}[axis equal] \addplot3[patch] file plotdata/data.txt}; \end{axis} \end{tikzpicture} \end{document} Viele Grüße, Dirk gefragt 09 Aug '14, 18:14 Dirk |
Die Quelle der Daten fuer die Farbzuordnung wird ueber den key In Deinem Fall ist Fuer eine komplette Farbzuordnung braeuchtest Du dann wohl noch eine Soweit komme ich mit, danach verstehe ich leider Dein Datenformat nicht so richtig, und auch nicht die Art, wie Du Dir das resultat vorstellst. Ein Hier ist jedenfalls das Resultat, mit ein paar Anpassungen, damit man sich im 3d Raum (hoffentlich) leichter zu recht findet: Open in writeLaTeX
\documentclass{standalone} \usepackage{pgfplots} \pgfplotsset{compat=1.9} \begin{document} \begin{tikzpicture} \begin{axis}[ axis equal image, enlargelimits=false, colorbar, %grid=both, 3d box=complete*, ] \addplot3[patch,scatter,point meta=explicit] file {P.dat}; \end{axis} \end{tikzpicture} \end{document} Ich habe noch die komplette 3d box dargestellt sowie mit EDIT Stefan wird mich zwar hauen, aber ich habe gerade nach der Antwort geguckt und kann meine Ideen nur hier hinschreiben. Daher: zu Deinen untenstehenden Fragen hier zumindest ein paar naheliegende Antworten: Open in writeLaTeX
\documentclass{standalone} \usepackage{pgfplots} \pgfplotsset{compat=1.9} \begin{document} \begin{tikzpicture} \begin{axis}[ axis equal image, enlargelimits=false, colorbar, grid=major, 3d box=complete*, xtick=data, ytick=data, ztick=data, colorbar style={ /pgf/number format/frac, % oder %ytick={0.2,0.4,0.6}, %yticklabels={$\frac15$, $\frac25$, $\frac35$}, }, ] \addplot3[only marks,scatter,point meta=explicit] file {P.dat}; \end{axis} \end{tikzpicture} \end{document}
An der colorbar habe ich ein paar "dummy" keys eingefuegt, die richtungsweisend sein koennen. Dazu stellst Du aber am Besten eine extra Frage. beantwortet 09 Aug '14, 21:38 cfeuersaenger Schick mit diesen Hilfs-"rechten Winkeln".
(09 Aug '14, 22:08)
cis
@Christian: Danke!
(10 Aug '14, 09:54)
Dirk
@cfeuersaenger Hauen doch nicht... Das Wohlfühlen unserer TeX-Freunde ist auch mir wichtiger als Regeln. Ist nur eine Empfehlung, eigenständige Fragen mit Lösungen helfen anderen leichter als ein Thread mit sechs Problemen gemischt. Wobei Komplettlösungen auch schön sind. Vielen Dank für die Antwort mit sehr guter Erklärung!
(10 Aug '14, 10:46)
stefan ♦♦
|