Estoy tratando de hacer una tabla de tamaño increíble, sin embargo, hay algunas dificultades que enumeré en la imagen a continuación:
Según
1
tengo entendido, la palabra no se separa con guiones automáticamente. Los otros lo son, pero es porque le puse los interruptores\-
al texto, a pesar de que los estoy usando\RaggedRight
en su línea*3{>{\centering\RaggedRight\arraybackslash}p{0.9cm}|}
.En
2
la palabra debería centrarse como las demás, pero no es así. A pesar de que puse específicamente el código\centering
, para las 3 columnas del medio. Línea:*3{>{\centering\RaggedRight\arraybackslash}p{0.9cm}|}
.
Este es el código de la tabla, lo creé basado en el¿Cómo forzar automáticamente al látex a no justificar el texto cuando no es prudente?'estable:
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[brazil]{babel}
\usepackage[a4paper, margin=2cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{mathptmx}
\usepackage{hyperref}
\usepackage{xspace}
\usepackage{microtype}
\usepackage{indentfirst}
\usepackage{lettrine}
\usepackage{graphicx}
\usepackage{float}
\usepackage{array,ragged2e}
\usepackage{tabularx}
\usepackage{multirow}
\begin{document}
\section{Riscos}
% \slash
\noindent\makebox[\textwidth]{%
\resizebox{1.1\linewidth}{!}{%
\begin{tabular}{|
*1{>{\raggedright\arraybackslash}p{4.0cm}|} % Riscos
*3{>{\centering\RaggedRight\arraybackslash}p{0.9cm}|} % Probabilidade, Impacto, Prioridade
*2{>{\raggedright\arraybackslash}p{4.0cm}|} % Resposta, Prevenção
}
\hline Riscos & Pro\-ba\-bi\-li\-da\-de & Im\-pac\-to & Prioridade & Es\-tra\-té\-gia de res\-pos\-ta & Ações de pre\-ven\-ção \\ \hline
% Row 1
% Riscos
\hline Problemas com perda de dados &
% Probabilidade
Baixa &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Uso do backup &
% Ações de prevenção
Backup periódicos \\ \hline
% Row 2
% Riscos
\hline Alteração do cronograma ou descontinuidade do projeto na empresa/laboratório onde recebo uma bolsa &
% Probabilidade
Média &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Redefinição da data de entrega do trabalho &
% Ações de prevenção
Monitoramento contínuo das informações obtidas com superiores imediatos \\ \hline
\hline \end{tabular}
}%
}%
\end{document}
Actualmente divido cada columna por línea, por lo tanto puedo preparar fácilmente la tabla mientras leo el látex. Entonces, ¿sería esta la mejor forma legible de crear dicha tabla en texto sin formato, teniendo en cuenta que sea fácil de editar y ampliar?
Además este texto está generando estas advertencias:
D:\main2.tex:73: Overfull \hbox (23.38434pt too wide) in paragraph at lines 73--73
D:\main2.tex:73: Overfull \hbox (1.82845pt too wide) in paragraph at lines 73--73
D:\main2.tex:73: Overfull \hbox (4.43913pt too wide) in paragraph at lines 73--73
¿Se pueden arreglar manteniendo mi tabla un poco más grande que el tamaño de página habitual?
Respuesta1
Si tiene problemas con la separación de palabras, compruebe si tiene babel instalado correctamente.
Con la separación de palabras manual como la que tiene en MWE, obtengo (después de la corrección de la definición de las columnas) el siguiente resultado:
Hice los siguientes cambios:
- agregue el paquete
changepage
y con su macroadjustwidth*
extienda la tabla fuera del borde exterior del texto - reducir el tamaño de fuente a
\small
(esto permite una mejor separación de palabras del texto en las celdas) - cambiar la definición
>{\centering\RaggedRight\arraybackslash}p{0.9cm}
(que es incorrecta) a>{\Centering\arraybackslash}p{0.9cm}
- para
tabularx
ambiente de uso de mesa - cambiar anchos de columna
MWE:
\documentclass[12pt]{article}
\usepackage[a4paper, margin=2cm, showframe]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{mathptmx}
\usepackage{xspace}
\usepackage{microtype}
\usepackage{indentfirst}
\usepackage{lettrine}
\usepackage{graphicx}
\usepackage{float}
\usepackage{ragged2e}
\usepackage{array, multirow, tabularx}
\usepackage[strict]{changepage}% <-- added
\usepackage{hyperref}
\begin{document}
\section{Riscos}
\begin{adjustwidth*}{}{-\marginparwidth}
\small
\begin{tabularx}{\linewidth}{|
*1{>{\RaggedRight\arraybackslash\hsize=1.1\hsize}X|}
*3{>{\Centering\arraybackslash}p{1.1cm}|} % <-- corrected
*2{>{\RaggedRight\arraybackslash\hsize=0.95\hsize}X|}
}
\hline
Riscos & Pro\-ba\-bi\-li\-da\-de & Impa\-cto & Prio\-ridade & Es\-tra\-té\-gia de res\-pos\-ta & Ações de pre\-ven\-ção \\ \hline
% Row 1
% Riscos
Problemas com perda de dados &
% Probabilidade
Baixa &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Uso do backup &
% Ações de prevenção
Backup periódicos \\ \hline
% Row 2
% Riscos
\hline Alteração do cronograma ou descontinuidade do projeto na empresa/laboratório onde recebo uma bolsa &
% Probabilidade
Média &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Redefinição da data de entrega do trabalho &
% Ações de prevenção
Monitoramento contínuo das informações obtidas com superiores imediatos \\
\hline\hline
\end{tabularx}
\end{adjustwidth*}%
\end{document}
Nota:dividir el texto con guiones en columnas tan estrechas no es una buena idea. Una mejor solución es usar algo de brevedad y agregar una explicación de su significado en el título de la tabla o en la nota al pie al final de la tabla (por ejemplo, usando threeparttable
).
Apéndice:en caso de que prefiera la expansión simétrica del ancho de la tabla (y, en mi opinión, no es mejor asimétrica hacia el borde exterior de la página), como puede ver aquí:
de lo que necesita cambiar solo adjustwidth*
la macro a, por ejemplo:
\begin{adjustwidth}{-0.5\marginparwidth}{-0.5\marginparwidth}
...
\end{adjustwidth}
Respuesta2
Te recomendaría encarecidamente quenoacostúmbrese a hacer las tablas más anchas que el bloque de texto, excepto en circunstancias extremas, que no parecen aplicarse a la tabla que nos ocupa. Esta recomendación es aún más urgente para su documento actual ya que, para empezar, utiliza márgenes bastante estrechos (2 cm).
En su lugar, debe (a) utilizar el tabularx
entorno y su X
tipo de columna para garantizar que la tabla encaje dentro del bloque de texto y (b) (re)definir todos los tipos de columnas adecuadamente, según sea necesario, para obtener una tabla atractiva. Además, omita todas las líneas verticales y utilice el booktabs
paquete para generar líneas horizontales bien espaciadas.
\documentclass[12pt]{article}
% I've tried to reduce the preamble to a bare minimum.
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[brazil]{babel}
\usepackage{newtxtext,newtxmath} % more up-to-date than 'mathptmx'
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage{microtype,ragged2e,tabularx,booktabs}
\newcolumntype{Y}{>{\RaggedRight\arraybackslash}X}
\newcolumntype{P}[1]{>{\RaggedRight\arraybackslash}p{#1}}
\newcolumntype{C}[1]{>{\Centering\arraybackslash\hspace{0pt}}p{#1}}
% the '\hspace{0pt}' directive enables hyphenation of first word of cell
\newlength\medlength
\settowidth{\medlength}{Média} % width of word "Média"
\begin{document}
\section{Riscos}
\noindent
\begin{tabularx}{\textwidth}{@{}
*1{>{\hangafter1\hangindent1em}P{4cm}}
*3{C{\medlength}} % or: C{1.4cm} C{0.9cm} C{1.1cm}
*2{Y}
@{}}
\toprule
Riscos & Probabilidade & Impacto & Prioridade &
Estratégia de resposta & Ações de prevenção \\
\midrule
% Row 1
% Riscos
Problemas com perda de dados &
% Probabilidade
Baixa &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Uso do backup &
% Ações de prevenção
Backup periódicos \\
\addlinespace
% Row 2
% Riscos
Alteração do cronograma ou descontinuidade do projeto
na empresa\slash laboratório onde recebo uma bolsa &
% Probabilidade
Média &
% Impacto
Alto &
% Prioridade
Alta &
% Estratégia de resposta
Redefinição da data de entrega do trabalho &
% Ações de prevenção
Monitoramento contínuo das informações obtidas
com superiores imediatos \\
\bottomrule
\end{tabularx}
\end{document}