Re: Dimensioni figure in tikzpicture-axis

#93793
Liverpool
Partecipante
    Up
    0
    Down
    ::


    Prova questo codice. Perché ho usato esplicitamente [tt]x[/tt], [tt]y[/tt] e [tt]z[/tt] al posto di [tt]view[/tt]? Semplicemente perché ho capito che vuoi che le dimensioni vengano rispettate e [tt]scale mode=none[/tt] mi dava stranamente un risultato sbagliato. Purtroppo ora non ho tempo di indagare; magari qualche altro utente risolverà il mistero.

    I comandi [tt]\coordinate[/tt] e [tt]\draw[/tt] servono solo per tracciare le linee di proiezione, ma se non ti servono, li puoi eliminare. Se anche la proiezione laterale non ti serve, cancella il secondo e il quarto ambiente [tt]\nextgroupplot[/tt] e cambia [tt]2 by 2[/tt] in [tt]1 by 2[/tt].

    Ciao

    `\documentclass[11pt]{article}
    \usepackage[italian]{babel}
    \usepackage{pgfplots} % pgfplots carica TikZ e xcolor
    \pgfplotsset{compat=1.9} % carica le impostazioni più recenti di pgfplots
    \usepgfplotslibrary{groupplots} % carica la libreria groupplots
    \colorlet{lightblue}{blue!60}

    \begin{document}
    %%%%%%%%%
    \begin{figure} % sfera
    \begin{tikzpicture}
    \pgfmathsetmacro{\r}{2} % raggio della sfera
    \newcommand{\disegnasfera}{ % comando che disegna la sfera
    \addplot3 [surf, z buffer=sort, samples=21, variable = \u, variable y = \v,
    domain = 0:180, y domain = 0:360, colormap name=gb, opacity = 0.5]
    ( {\r*sin(u)*cos(v)}, {\r*sin(u)*sin(v)}, {\r*cos(u)} );
    }

    \pgfplotsset{every axis/.style={ % opzioni comuni a tutti i grafici
    axis lines=none,
    colormap={gb}{color(0cm)=(lightblue); color(1cm)=(white)}},
    every axis title/.style={at={(0,1)}, below right, font=\footnotesize}
    }

    \begin{groupplot} [group style={group size=2 by 2}] % prepara i 4 quadri
    \nextgroupplot [x={(1cm,0)}, y={(0,0)}, z={(0,1cm)}, title=PV] % piano verticale
    \coordinate (P1) at (axis cs:0,0,-2); % questi comandi servono solo per
    \coordinate (P2) at (axis cs:0,0,2); % disegnare le linee delle proiezioni
    \coordinate (P3) at (axis cs:-2,0,0);
    \coordinate (P4) at (axis cs:2,0,0);
    \disegnasfera
    \nextgroupplot [x={(0,0)}, y={(1cm,0)}, z={(0,1cm)}, title=PL] % piano laterale
    \coordinate (Q1) at (axis cs:0,0,-2);
    \coordinate (Q2) at (axis cs:0,0,2);
    \disegnasfera
    \nextgroupplot [x={(1cm,0)}, y={(0,1cm)}, z={(0,0)}, title=PO] % piano orizzontale
    \coordinate (Q3) at (axis cs:-2,0,0);
    \coordinate (Q4) at (axis cs:2,0,0);
    \disegnasfera
    \nextgroupplot [group/empty plot]
    \end{groupplot}
    \foreach \i in {1,…,4}
    \draw [dashed, gray] (P\i) — (Q\i);
    \end{tikzpicture}

    \caption {…….}
    \label{fig:1}
    \end{figure}
    \end{document}`

    Go to top