Risposte nei forum create
-
AutoreRisposte
-
::
Quel ciclo in effetti potrebbe essere riscritto in un altro modo (che spiego dopo). Come è stato fatto notare quel ciclo serve soltanto per aggiornare il valore di densità in modo consistente; ossia: `\pgfmathsetcounter{density}{\thedensity+10}
\setcounter{density}{\thedensity}
` aggiunge 10 al valore corrente del contatore e successivamente setta il contatore con il nuovo valore. Il contatore inizialmente vale: `
\setcounter{density}{20}
` quindi dopo il primo ciclo il suo valore sarà 30. Con questo trucchetto ad ogni successivo ciclo si mantiene il contatore aggiornato: `x=2 => \thedensity=40` Alla fine il valore di [tt]\thedensity[/tt] sarà 170 (puoi testarlo con [tt]\nodeat (0,0) {\thedensity};[/tt] fuori dal ciclo). Come fare per usare effettivamente la [tt]\x[/tt] nel ciclo? Con la chiave`evaluate=\x as \altro using formula` vedi pagina 507-508 del manuale. Quindi: `
\foreach \x[evaluate=\x as \mydensity using int(\x*10+\thedensity)] in {1,…,15}{%
…
\draw[fill=\couleur!\mydensity] (A)–(B)–(C)–cycle;
}
` Uso [tt]int(formula)[/tt] solo per evitare che TikZ piazzi un [tt].0[/tt] finale ai valori che sarebbero interpretati come angolo dell’ancora (vedi http://tex.stackexchange.com/questions/94787/difference-between-newcommand-and-pgfmathsetmacro-used-in-tikz-coordinate).Allego un documento in cui si confrontano il metodo di Alain e l’uso di [tt]evaluate[/tt] (confrontando i valori finali dei contatori): `
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage{tikz}
\begin{document}
\newcounter{density}
\setcounter{density}{20}
\begin{tikzpicture}
\def\couleur{MidnightBlue}
\path[coordinate] (0,0) coordinate(A)
++( 60:12cm) coordinate(B)
++(-60:12cm) coordinate(C);
\draw[fill=\couleur!\thedensity] (A) — (B) — (C) — cycle;
\foreach \x[evaluate=\x as \mydensity using int(\x*10+\thedensity)] in {1,…,15}{%
\path[coordinate] coordinate(X) at (A){};
\path[coordinate] (A) — (B) coordinate[pos=.15](A)
— (C) coordinate[pos=.15](B)
— (X) coordinate[pos=.15](C);
\draw[fill=\couleur!\mydensity] (A)–(B)–(C)–cycle;
% test per vedere a quanto arriva mydensity
\ifnum\x=15
\nodeat (0,0){\mydensity};
\fi
}\end{tikzpicture}
\begin{tikzpicture}
\def\couleur{MidnightBlue}
\path[coordinate] (0,0) coordinate(A)
++( 60:12cm) coordinate(B)
++(-60:12cm) coordinate(C);
\draw[fill=\couleur!\thedensity] (A) — (B) — (C) — cycle;
\foreach \x in {1,…,15}{%
\pgfmathsetcounter{density}{\thedensity+10}
\setcounter{density}{\thedensity}
\path[coordinate] coordinate(X) at (A){};
\path[coordinate] (A) — (B) coordinate[pos=.15](A)
— (C) coordinate[pos=.15](B)
— (X) coordinate[pos=.15](C);
\draw[fill=\couleur!\thedensity] (A)–(B)–(C)–cycle;
}
\nodeat (0,0) {\thedensity};
\end{tikzpicture}
\end{document}\end{document}
% Name : RotateTriangle
% Encoding : utf8
% Engine : pdflatex
% Author: Alain Matthes
`Ciao
Claudio
::minigonnablu” post=81451Salve a tutti
vorrei sapere a cosa servono i comandi che iniziano con \ChTitle
Come, ad esempio:- \ChTitleAsIs
- \ChTitleUpperCase
Grazie
Ciao,
dovrebbero essere comandi del pacchetto [tt]fncychap[/tt]. Puoi trovare la documentazione da terminale con texdoc fncychap oppure andando su http://texdoc.net/
Ciao
Claudio
::marchetto” post=81384
Marco: i file più grandi di una certa dimensione (che ora non mi ricordo) non si possono caricare.
è strano perché il file più grosso è di 400kB.
I link sono:
Marco
Ah.. per quei tipi di disegni non ho dubbi: usa TikZ-mec di Francesco “Spike”. Fra le altre cose, nell’Introduzione all’uso di TikZ c’è un capitolo di meccanica che ha diverse analogie con quello che vuoi fare (indovina di chi sono gli esempi? 😉 ).
Ciao
Claudio
::Dr Spencer Reid” post=81369in caso contrario, converti a .jpg
Non vedo perché si debba convertire in [tt].jpg[/tt]. Compilando con pdfLaTeX non ci sono problemi.
@Raffa: potresti essere precisa su quali editor utilizzi e come sono impostati? Se ad esempio su Windows compili con pdfLaTeX e su Mac con LaTeX avresti dei problemi. Seconda cosa, più importante: hai controllato che trasferendo i file fra i pc hai copiato tutto?Ciao
Claudio
::
Marco: i file più grandi di una certa dimensione (che ora non mi ricordo) non si possono caricare.Nel mio precedente intervento mi ero dimenticato di una risorsa molto importante: http://www.texample.net/. È una galleria di esempi realizzati con TikZ: la ricerca è notevolmente agevolata dai tag di vario tipo (tecnici come [tt]foreach[/tt], di area come [tt]3D[/tt] e di argomento come [tt]networking[/tt]). Nel tuo caso darei un’occhiata a http://www.texample.net/tikz/examples/tag/3d/.
Ciao
Claudio
::uichilix” post=81221ciao a tutti,
ieri ho installato latex2html sulla mia archlinux e ho provato a compilare il sorgente .tex di un mio precedente lavoro!
Come primo tentativo è già buono che abbia funzionato 🙂 ma il risultato a livello visivo non era soddisfacente (problemi con le lettere accentate e con l’organizzazione della pagina in generale), perché la pagina aveva tutt’altro che l’apetto del pdf che viene fuori dalla compilazione dello stesso sorgente .tex con pdflatex!
La cosa non mi ha stupito, ma adesso mi piacerebbe capire come ottenere i risultati voluti con questo strumento!Che guide mi consigliate di seguire?
E poi secondo voi ci sarebbero strumenti più adatti di latex2html per lo scopo? Io ho necessità di scrivere tantissime formule matematiche anche molto complesse e tante immagini!ciao igor
Dunque, io non conosco assolutamente [tt]latex2html[/tt], ma un’ottimo strumento è anche LaTeXML. Principalmente, come dice il nome, converte documenti [tt]tex[/tt] in [tt]xml[/tt] e offre anche la possibilità di convertirli in formato [tt]htlm[/tt] (a dire la verità i formati possibili sono [tt]xhtml[/tt], [tt]html[/tt], [tt]html5[/tt]). Puoi trovare un mini tutorial in Latex to XML using pdflatex con tanto di risultato grafico.
Ciao
Claudio
::ameba” post=81203Nel mio elaborato avevo già inserito il frontespizio che era stato sviluppato in word.
😮
Prova a dare un’occhiata a questa collezione di frontespizi già pronti: texdoc titlepages o http://www.ctan.org/tex-archive/info/latex-samples/TitlePages
Ciao
Claudio
::marchetto” post=81188Buonasera,
mi trovo a scrivere spesso testi di ingegneria con Latex. Devo anche inserire molte immagini, talvolta grafici creati con altri software, talvolta li faccio con i pacchetti disponibili in Latex.
Certe volte sono immagini di solidi geometrici anche complicati e quasi sempre hanno lettere o parole al loro interno: li faccio sempre con Autocad.
Il mio problema è che poi le scritte nelle immagini hanno un font differente a quello del testo e, nel file .tex, variando le dimensioni delle immagini variano anche le dimensioni delle scritte che risultano a volte illeggibili a volte troppo grandi quando invece mi ero tanto impegnato a creare una bella immagine che stesse bene nel testo. Soprattutto vorrei che le dimensione delle scritte sia uguale a quella del testo.La mia domanda è:
qualcuno sa consigliarmi un software per creare immagini vettoriali di tipo “disegno tecnico” nel quale si possa inserire testo con lo stesso carattere di default di Latex e che regoli automaticamente la dimensione del testo in base al file .tex?
O meglio ancora, qualcuno sa dirmi come CAVOLO fa chi scrive un libro a fare delle immagini così perfette con scritte perfette sia per dimensione che font? Che programmi usano?!Grazie
MarcoBeh, esistono pacchetti come TikZ/PSTricks che sono alla base direi di una buona fetta delle immagini di cui parli. Visto che scrivi testi e tesi di ingegneria, ti consiglierei per prima cosa di dare una lettura alla guida tematica Introduzione all’uso di TikZ in Ingegneria che trovi nella sezione Documentazione -> Guide Tematiche. Gli esempi trattano diversi ambiti e magari puoi trovare qualcosa del tuo settore.
Hai anche accennato a solidi geometrici: in quel caso TikZ forse è un po’ peggio rispetto a PSTricks, vedi http://tex.stackexchange.com/questions/68247/3d-axis-and-polyhedron-with-line-segment-towards-origin. In genere, se hai tempo, andare su TeX.SX è una cosa da fare perché si impara tantissimo. Per geometria euclidea, invece, direi che il pacchetto http://www.ctan.org/pkg/tkz-euclide è la strada maestra: nel bundle ci sono anche altri pacchetti interessanti.
Non ho detto tutto, ma è un buon inizio 🙂
Ciao
Claudio
::Dr Spencer Reid” post=81107grazie per l’aiuto!
direi che la soluzione 5 è quella che si adatta meglio al mio caso!
ovviamente senza lo sfondo rosa 😛Ma non devi includere nell’ambiente [tt]tkzexample[/tt] le figure: io l’ho usato solo perché compilando il mio documento avresti avuto delle pagine di questo tipo
[attachment=573]prova_guit1.jpg[/attachment]
in cui si vede figura e codice contemporaneamente. Da utente, l’utilità di vedere il codice di una figura in un documento che parla probabilmente di un argomento diverso mi sfugge.
Ciao
Claudio
Attachments:
You must be logged in to view attached files.4 Gennaio 2013 alle 10:15 in risposta a: [Risolto] Compilazione pgfmanual: mi mancano alcune sezioni #81799::Liverpool” post=81099
5) dato il comando [tt]make dist[/tt] per i riferimenti
6) dato il comando [tt]make pgfmanual.pdf[/tt] per la creazione dell’indice (il passaggio richiede di re-inserire i nomi dei plot).Nell’ordine che mi hai suggerito tu ottengo il pdf con l’indice analitico, ma i riferimenti alle parole chiave spariscono dal punto 5) al punto 6).
Invertendo l’ordine dei due punti, ottengo sia l’indice analitico sia i riferimenti alle parole chiave, ma stranamente il pdf perde circa 1 MiB.Ciao
Ah.. ottimo. 🙂 Onestamente io ieri ho pasticciato un po’ e ho riportato solo gli ultimi passaggi della history del terminale quindi è possibilissimo che occorra scambiare i passaggi.
Ciao
Claudio
::Dr Spencer Reid” post=81102ho creato il seguente diagramma di Hasse, come diagramma di partenza.
`\begin{center}
% disegnare punti
\begin{tikzpicture}[scale=.75]
\draw[fill] (-1, 1) circle (.08cm) node{$g_1$};
\draw[fill] (-3, 0) circle (.08cm) node{$g_2$};
\draw[fill] (-1, -1) circle (.08cm) node{$g_3$};
\draw[fill] (1, 0) circle (.08cm) node{$g_4$};
% disegnare legami
\draw (-1,1) — (-3,0);
\draw (-1,1) — (1,0);
\draw (-3,0) — (-1,-1);
\draw (-1,-1) — (1,0);
\end{tikzpicture}
\end{center}`ma ho i seguenti dubbi, dovuti all’inesperienza con questo pacchetto, appena iniziato ad usare:
– è possibile separare il nome dei punti leggermente dal punto relativo?
– è possibile separare le linee dai punti? a me serve che i punti siano collegati, ma non che le linee tocchino le estremitàgrazie a tutti per gli aiuti e la pazienza!

Vedo parecchie soluzioni per migliorare il tuo codice: ne riporto qualcuna.
`
\documentclass[a4paper,11pt]{article}
\usepackage[width=15cm]{geometry}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{tkzexample}
\colorlet{codebackground}{blue!20}%
\colorlet{graphicbackground}{yellow!20}%\begin{document}
Soluzione 1: dispendiosa\begin{tkzexample}[width=4cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
\draw[fill] (-1, 1) circle (.08cm) node[above] {$g_1$};
\draw[fill] (-3, 0) circle (.08cm) node{$g_2$};
\draw[fill] (-1, -1) circle (.08cm) node[below] {$g_3$};
\draw[fill] (1, 0) circle (.08cm) node{$g_4$};
% disegnare legami
\draw (-1,1) — (-3,0);
\draw (-1,1) — (1,0);
\draw (-3,0) — (-1,-1);
\draw (-1,-1) — (1,0);
\end{tikzpicture}
\end{tkzexample}
\medskipSoluzione 2: leggermente migliore
\begin{tkzexample}[width=3cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
\tikzset{marker/.style={inner sep=0pt}}
\draw[fill] (-1, 1) node[marker] (1){} circle (.08cm) node[above] {$g_1$};
\draw[fill] (-3, 0) node[marker] (2){}circle (.08cm) node{$g_2$};
\draw[fill] (-1, -1) node[marker] (3){} circle (.08cm) node[below] {$g_3$};
\draw[fill] (1, 0) node[marker] (4){} circle (.08cm) node{$g_4$};
% disegnare legami
\draw (1.center)–(2.center)–(3.center)–(4.center)–cycle;
\end{tikzpicture}
\end{tkzexample}
\pagebreakSoluzione 3: mi piace
\begin{tkzexample}[width=3cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
\tikzset{marker/.style={circle,fill=black,scale=0.5}}
\node[marker, label=above:$g_1$] (1) at (-1, 1) {};
\node[marker, label=left:$g_2$] (2) at (-3, 0) {};
\node[marker, label=below:$g_3$] (3) at (-1, -1) {};
\node[marker, label=right:$g_4$] (4) at (1,0) {};
% disegnare legami
\draw (1.center)–(2.center)–(3.center)–(4.center)–cycle;
\end{tikzpicture}
\end{tkzexample}
\medskipSoluzione 4: migliore
\begin{tkzexample}[width=3cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
\tikzset{marker/.style={circle,fill=black,scale=0.5}}
\foreach \x/\pos/\lab
in {1/{(-1,1)}/above, 2/{(-3, 0)}/left, 3/{(-1,-1)}/below, 4/{(1,0)}/right}
\node[marker, label=\lab:$g_\x$] (\x) at \pos {};
% disegnare legami
\draw (1.center)–(2.center)–(3.center)–(4.center)–cycle;
\end{tikzpicture}
\end{tkzexample}
\pagebreakSoluzione 5: i segmenti non raggiungono i punti
\begin{tkzexample}[width=3cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
\tikzset{marker/.style={circle,fill=black,scale=0.5, outer sep=5pt}}
\foreach \x/\pos/\lab
in {1/{(-1,1)}/above, 2/{(-3, 0)}/left, 3/{(-1,-1)}/below, 4/{(1,0)}/right}
\node[marker, label=\lab:$g_\x$] (\x) at \pos {};
% disegnare legami
\draw (1)–(2)–(3)–(4)–(1);
\end{tikzpicture}
\end{tkzexample}
\pagebreakSoluzione 6: solo per usare un po' le chiavi
\begin{tkzexample}[width=3cm]
% disegnare punti
\begin{tikzpicture}[scale=.75]
% setting labels in math mode\tikzset{math mode labels/.style={%
execute at begin node=$,%
execute at end node=$,%
}
}
\pgfkeys{/tikz/.cd,%
use math mode labels/.is choice,%
use math mode labels/true/.style={math mode labels},%
use math mode labels/false/.style={},%
}%\tikzset{set math mode labels/.style={%
use math mode labels=#1,%
},%
set math mode labels/.default=false,%
}\tikzset{marker/.style={circle,fill=black,scale=0.5, outer sep=5pt}}
\foreach \x/\pos/\lab
in {1/{(-1,1)}/above, 2/{(-3, 0)}/left, 3/{(-1,-1)}/below}{
\node[marker] (\x) at \pos {};
\node[set math mode labels=true, \lab=0.1cm of \x] {g_\x};
}
\node[marker] (4) at (1,0) {};
\node{g$_4$};
% disegnare legami
\draw (1)–(2)–(3)–(4)–(1);
\end{tikzpicture}
\end{tkzexample}\end{document}
`Ciao
Claudio
3 Gennaio 2013 alle 14:02 in risposta a: [Risolto] Compilazione pgfmanual: mi mancano alcune sezioni #81795::Liverpool” post=81063Sto provando a compilare il [tt]pgfmanual[/tt] con pdflatex. Ho copiato la cartella [tt]…\doc\generic\pgf[/tt] in un’altra posizione e ho avviato il file [tt]…\pgf\version-for-pdftex\en\pgfmanual.tex[/tt]. Questo file richiama a sua volta il file [tt]…\pgf\text-en\pgfmanual-en-main.tex[/tt] che è il vero punto di partenza per il manuale: carica le macro e le librerie, contiene la copertina e alcune parti e in più carica tramite comandi [tt]\include[/tt] le varie sezioni del manuale.
Il problema è che nel pdf mancano tutte le sezioni (di fatto non) caricate tramite [tt]\include[/tt], mentre sono presenti le parti inglobate nel main.
Nel log ottengo una sfilza di
`No file pgfmanual-en-nomefile.tex`
Cosa sto sbagliando?Grazie,
LuigiDettagli aggiuntivi: l’unico [tt]\includeonly[/tt] presente è commentato.
Io ho risolto così:
1) ho creato sul desktop una cartella temporanea chiamata [tt]pgfmanual[/tt];
2) copiato all’interno di [tt]pgfmanual[/tt] le directories:- version-for-pdftex da [tt]/usr/local/texlive/2012/texmf-dist/doc/generic[/tt]
- text-en da [tt]/usr/local/texlive/2012/texmf-dist/doc/generic[/tt]
- images da [tt]/usr/local/texlive/2012/texmf-dist/doc/generic[/tt]
- macros da [tt]/usr/local/texlive/2012/texmf-dist/doc/generic[/tt]
3) con il terminale mi sono portato in [tt]cd Scrivania/pgfmanual/version-for-pdftex/en/[/tt]
4) dato il comando [tt]make all[/tt]– ATTENZIONE- Ogni tanto vi compariranno dei messaggi tipo:
! I can’t write on file `plots/pgfplotgnuplot-example.gnuplot’.
\relax
l.228 \end{codeexample}(Press Enter to retry, or Control-D to exit; default file extension is `.tex’)
Please type another output file name:
Si ricopi esattamente il nome del file da sovrascrivere e tutto andrà a posto; ad esempio:
! I can’t write on file `plots/pgfplotgnuplot-example.gnuplot’.
\relax
l.228 \end{codeexample}(Press Enter to retry, or Control-D to exit; default file extension is `.tex’)
Please type another output file name: pgfplotgnuplot-example.gnuplot
5) dato il comando [tt]make dist[/tt] per i riferimenti
6) dato il comando [tt]make pgfmanual.pdf[/tt] per la creazione dell’indice (il passaggio richiede di re-inserire i nomi dei plot).Al termine avrete la directory [tt]Scrivania/pgfmanual/version-for-pdftex/en/[/tt] con una miriade di files ausiliari, ma non lanciate [tt]make clean[/tt] prima di avere salvato il pdf da qualche parte: mi sono accorto a mie spese (dopo ovviamente) che il clean rimuove anche il pdf appena creato con minuti di paziente attesa.
Ciao
Claudio
::
Puoi anche utilizzare TikZ; un esempio: `
\documentclass[convert={density=600×600,outext=.jpg}]{standalone}
% con questa classe automaticamente crea anche un output in .jpg
\usepackage{calrsfs} % per il font
\usepackage{tikz}% comando \tikzcal:
% #1 opzionale: cambia le dimensioni per il fattore di scala
% #2 obbligatorio: la lettera
% #3 obbligatorio: la posizione della lettera
\newcommand{\tikzcal}[3][2]{\node[font=\Huge,scale=#1] at #3 {$\mathcal{#2}$};}\begin{document}
\begin{tikzpicture}
\tikzcal[2.5]{C}{(0,0)}
\tikzcal[2.5]{F}{(2,-0.75)}
\end{tikzpicture}
\end{document}
` Il risultato:[attachment=566]tikz_prova.jpg[/attachment]
EDIT: le dimensioni forse erano eccessive.
Ciao
Claudio
Attachments:
You must be logged in to view attached files.::
Propongo un approccio alternativo mantenendo la frazione basato sulla macro [tt]tikzmark[/tt] (non potevo resistere 😀 ).Il codice:`
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{tikz}\newcommand{\tikzmark}[1]{\tikz[overlay, remember picture,baseline]\node (#1){};}
\newcommand{\annota}[3][]{\tikz[overlay, remember picture]\node[#1] at (#2){#3};}\begin{document}
\[\dfrac
{\langle z:=x, s_0\rangle \rightarrow s_1 \quad \quad \langle x:=y, s_1 \rangle \rightarrow s_2}
{\langle z:= x; x:=y, s_0 \rangle \rightarrow s_2\tikzmark{posto}}
\]
\annota[red,right]{posto}{gg}
\annota[blue,right,xshift=2cm]{posto}{gg}
\end{document}
` Il comando [tt]\annota[/tt] che propriamente realizza l’annotazione richiede tre argomenti: il primo opzionale serve a personalizzare l’annotazione (si vedano i due esempi), il secondo è il “posto” in cui serve l’annotazione e il terzo è il testo dell’annotazione.Si compili due volte per ottenere il risultato. Per approfondimenti rimando alla guida tematica Introduzione all’uso della macro tikzmark che si può scaricare dalla Documentazione in alto.
Buon anno 🙂
Ciao
Claudio
::antonioliva” post=80928Leggendo la guida del pacchetto pgfplots ho notato la possibilità di realizzare un grafico con due assi delle ordinate, mi chiedo se è possibile fare una cosa del genere anche con l’asse delle ascisse.
Devo realizzare un grafico con due assi x, il primo è un asse temporale e deve essere posizionato in basso, il secondo riporta il numero di orbite e va posizionato in alto.N.B. questa è la mia primissima discussione, ringrazio in anticipo tutti coloro che interverranno 🙂
AO
Ciao e benvenuto 🙂
Direi che si può fare: l’idea è di creare due grafici (due ambienti [tt]axis[/tt] per capirci) di cui uno non abbia dati e gestire correttamente gli assi (in uno posizionare l’asse x solo in basso mentre nel secondo solo in alto).
Ecco un esempio di codice:`
\documentclass[a4paper,11pt]{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.7} % utilizza pure la versione che hai nella tua macchina
% con TeXLive aggiornata 1.7 è la versione corrente\begin{document}
\begin{tikzpicture}
% ambiente con dati: asse x solo in basso
\begin{axis}[axis x line*=bottom,
width=10cm,
height=10cm,
xlabel=$x$,
ylabel=$y$]
\addplot {\x^2};
\end{axis}
% ambiente senza dati
\begin{axis}[axis x line*= top,
width=10cm,
height=10cm,
xlabel=$orbital$,
enlargelimits=false,
xticklabel style={text depth=0pt},% permette un migliore allineamento vedi:
% http://tex.stackexchange.com/questions/79449/pgfplots-with-2-x-axis-misalignment-of-upper-x-xticklabels
axis y line=none,]
\end{axis}
\end{tikzpicture}
\end{document}
`Ciao
Claudio
-
AutoreRisposte