Re: Utonto chiede aiuto per codice tabelle

#14957
Up
0
Down
::

Sto attualmente concludendo un breve articolo e mi scontro un po’ con la complessità associata alla realizzazione delle tabelle. Ho consultato diverse guide per realizzare tabelle più o meno complesse; i risultati ci sono solo in parte e per questo volevo chiedervi alcuni pareri:

1) e’ possibile che per realizzare una tabella semplice quale quella riportata sotto sia necessario un codice così “ingarbugliato”. Poichè sono completamente autodidatta (come la maggior parte di voi presumo) non ho termini di confronto per la “pulizia” concettuale del codice e volevo qdi un parere sul come penso il codice.

Si può fare meglio; secondo me sei tu che ti ingarbugli da solo: pensa a separare gli “strati logici”:
`%dichiarazione del documento
\documentclass[a4paper,11pt]{article}

%dichiarazione lingua, spelling, simboli etc
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[italian]{babel}

%package per le tabelle

\usepackage{booktabs}%serve per i diveri tipi di righe (top/mid/bottom) delle tabelle
\usepackage{array} %base per alcuni pacchetti+ allineamento celle
\usepackage{tabularx} %tabelle con celle dimensione dinamica

\newcolumntype{P}[2]{>{#1\raggedright\arraybackslash}p{#2}}

%inizio del documento

\begin{document}

\begin{table}
\scriptsize
\centering
\begin{tabularx}{\textwidth}{P{\bfseries}{50pt}P{}{70pt}lX}
\toprule
Indicatore &
\multicolumn{1}{c}{\bfseries Riferimenti} &
\multicolumn{2}{c}{\bfseries Comportamento nella fase di maturità} \\
\toprule
Produzione Industriale &
Amin e Smith (1990), Jovanovic e MacDonald (1994), Filson e Songsamphant (2005) &
Decrescente &
La saturazione della domanda e/o la crescente quota di mercato detenuta dai produttori
esteri determina una contrazione dell'output complessivo del settore.\\
\midrule
Valore Aggiunto &
Patton (1959), Levitt (1965), Smallwood (1973) &
Decrescente &
La crescente competizione interna al settore e la contrazione dell'output determinano una
riduzione del valore complessivamente generato dal settore.\\
\midrule
Fatturato &
Tan e Lewis (1994) &
Decrescente &
La saturazione della domanda e/o la crescente quota di mercato detenuta dai produttori
esteri determina una contrazione dell'output complessivo del settore.\\
\midrule
Prezzi &
Patton (1959), Mueller e Tilton (1969), Grant (2002) &
Decrescente &
La contrazione dell'output e dei prezzi determina una riduzione del fatturato complessivo
del settore.\\
\midrule
Occupazione &
Barba e Navaretti (2002) &
Decrescente &
L'intensificarsi della competizione interna al settore si traduce in una contrazione dei
prezzi.\\
\midrule
Import &
Wells (1972), Amin e Smith (1990), Grant (2002) &
Crescente &
La riduzione del numero di imprese causato dall'uscita delle aziende meno profittevoli
determina una contrazione del numero di addetti.\\
\midrule
Export &
Wells (1972), Corcoran (1990) &
Decrescente &
La disponibilità di fattori della produzione maggiormente competitivi spinge un crescente
numero di imprese estere ad entrare nel mercato domestico.\\
\midrule
Numero di imprese &
Levitt (1965), Jovanovic e MacDonald (1994), Klepper (1996) &
Decrescente &
La riduzione del numero di imprese operanti nel settore e la crescente competizione portata
dai produttori esteri determina una riduzione della capacità di esportare da parte del
settore.\\
\bottomrule
\end{tabularx}

\caption{Indicatori di maturità: riferimenti bibliografici e principali comportamenti.}
\label{tab:indmat}
\end{table}

\end{document}`

2) come faccio nella tabella riportata come esempio a impostare colonne di lunghezza fissa ma non giustificate (ad esempio mi interessa per la seconda colonna)? Ed evitare la sillabazione dei nomi nella prima colonna senza inserire le parole in strutture come \box (preferisco infatti che la parola vada piuttosto completamente a capo)?

Hai certamente visto come ho fatto: ho definito un nuovo tipo di colonna, per maggiore praticità. Prende due argomenti, il primo è per l’impostazione dei caratteri, il secondo per la larghezza della colonna.

Non sarebbe necessario, l’importante è dare \raggedright, che serve appunto a non giustificare. Nel caso tu voglia forzare un a capo, usa \newline.

Su un paio di cose vorrei correggerti. “Sto attualmente concludendo” è italiano alquanto zoppicante e inutilmente pomposo, meglio “sto finendo di scrivere”. 🙂

La dichiarazione \bfseries è locale alla cella in cui si trova, quindi non occorre la coppia di graffe supplementari.

Puoi usare il fatto che gli spazi prima e dopo & e \\ sono ignorati per migliorare l’aspetto del codice e renderlo più leggibile.

Per finire, se una tabella è complicata, non c’è niente da fare: occorre lavorarci un po’.

Ciao
Enrico

Go to top