Barrer une case dans un tableau

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Barrer une case dans un tableau

Messagepar MB » Samedi 24 Novembre 2007, 17:19

Bonjour, je souhaite pouvoir barrer certaines cases d'un tableau (tabular ou array). Il s'agit donc de faire un croix occupant l'intégralité de la case à barrer.
Un peu comme slashbox donc, mais avec deux traits.
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Barrer une case dans un tableau

Messagepar rebouxo » Samedi 24 Novembre 2007, 17:31

Ben déjà que slashbox ne fonctionnait pas bien, alors une croix, pffffou....
Bon, rien dans le LC2.
Bon, ben je retourne à ma plomberie.

Olivier
rebouxo
Modérateur
 
Messages: 6926
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar MB » Samedi 24 Novembre 2007, 17:44

rebouxo a écrit:Ben déjà que slashbox ne fonctionnait pas bien, alors une croix, pffffou....


Oui, je ne n'ai pas trop d'espoirs mais bon ... qui sait ! :mrgreen:
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar kojak » Samedi 24 Novembre 2007, 18:05

MB a écrit:Oui, je ne n'ai pas trop d'espoirs mais bon ... qui sait ! :mrgreen:

T'as qu'à faire un zoli tableau avec pstricks, comme ça tu pourras dessiner ce dont tu as envie :mrgreen:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10397
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar MB » Samedi 24 Novembre 2007, 18:06

Certes ou avec Asymptote (car je compile toujours avec pdflatex).
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar D.GH » Dimanche 25 Novembre 2007, 18:27

MB a écrit:Bonjour, je souhaite pouvoir barrer certaines cases d'un tableau (tabular ou array). Il s'agit donc de faire un croix occupant l'intégralité de la case à barrer.
Un peu comme slashbox donc, mais avec deux traits.


Bonsoir,

je ne sais pas si j'ai bien compris la question. Qu'est-ce que l'exemple suivant répond à la question ?

Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% http://www.cnam.fr/maths/Membres/ghorbanzadeh/
\documentclass[12pt, twoside, a4paper]{article}
\usepackage[latin1]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{textcomp}

\usepackage[table]{xcolor}
\usepackage{array, slashbox, multirow}
\usepackage{pstricks}
 \usepackage{amsmath,amssymb}

\newcommand\Lignecouleur{{\let\noalign\relax\rowcolor{green!40!red!45}}}
\newlength{\LongH}
\setlength{\LongH}{\arraycolsep}
\addtolength{\LongH}{2cm}

\newlength{\LongV}
\setlength{\LongV}{4\tabcolsep}


 \def\Casehachuree{%
  \begin{pspicture}(0,0)(\the\LongH,\the\LongV)
    \psframe[fillstyle=crosshatch,linecolor=white](-\arraycolsep,-1.5\tabcolsep)(\the\LongH,\the\LongV)
  \end{pspicture}
}

\begin{document}
  \renewcommand\arraystretch{2}
  \begin{tabular}{l|*{5}{p{2cm}|}}
      &\multicolumn{5}{>{\Lignecouleur}c}{$f_X\ast f_Y$} \\ \cline{2-6}
      &\backslashbox{$f_X$}{$f_Y$} & 19 & 3 & $X^{\alpha}$ & \Casehachuree \\ \cline{2-6}
     & $X^{\eta}$& \Casehachuree & 3 & \Casehachuree& 5 \\ \cline{2-6}
     & \Casehachuree & 3 & 4 & 5 & \Casehachuree\\ \cline{2-6}
      & -11 & $X-1$ & \Casehachuree & 6 & 7 \\\cline{2-6}
  \end{tabular}
\end{document}


D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Barrer une case dans un tableau

Messagepar MB » Dimanche 25 Novembre 2007, 19:00

Bonsoir D.GH.

Tu as bien compris ce que je voulais, même si une simple croix dans la case aurait pu suffire (là elle est complètement hachurée).
Mais le principal problème est que je n'utilise que pdflatex et donc pas de pstricks pour moi. :|
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar D.GH » Dimanche 25 Novembre 2007, 19:40

MB a écrit:Bonsoir D.GH.
là elle est complètement hachurée


Bonsoir voici une version avec une seule barre. Personnellement je passe par
1) Latex doc.tex
2) dvips doc.dvi
3) ps2pdf doc.ps

Je laisse le code qui fonctionne avec la procédure ci-dessus :

Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% http://www.cnam.fr/maths/Membres/ghorbanzadeh/
\documentclass[12pt, twoside, a4paper]{article}
\usepackage[latin1]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{textcomp}

\usepackage[table]{xcolor}
\usepackage{array, slashbox, multirow}
\usepackage{pstricks, pstricks-add}
 \usepackage{amsmath,amssymb,calc}

\newcommand\Lignecouleur{{\let\noalign\relax\rowcolor{green!40!red!45}}}
\newlength{\LongH}
\setlength{\LongH}{\arraycolsep}
\addtolength{\LongH}{2cm}

\newlength{\LongV}
\setlength{\LongV}{4\tabcolsep}


 \def\Casehachuree{%
  \begin{pspicture}(0,0)(\the\LongH,\the\LongV)
  %\psline[linewidth=2pt](-\arraycolsep,\the\LongV)(\the\LongH,-1.5\tabcolsep)
  \psline[linewidth=2pt](-\arraycolsep,-1.5\tabcolsep)(\the\LongH,\the\LongV)
  %\psframe[fillstyle=hlines,hatchangle=45,hatchsep=2,linecolor=white](-\arraycolsep,-1.5\tabcolsep)(\the\LongH,\the\LongV)
  \end{pspicture}
}

\begin{document}
  \renewcommand\arraystretch{2}
  \begin{tabular}{l|*{5}{p{2cm}|}}
      &\multicolumn{5}{>{\Lignecouleur}c}{$f_X\ast f_Y$} \\ \cline{2-6}
      &\backslashbox{$f_X$}{$f_Y$} & 19 & 3 & $X^{\alpha}$ & \Casehachuree \\ \cline{2-6}
     & $X^{\eta}$& \Casehachuree & 3 & \Casehachuree& 5 \\ \cline{2-6}
     & \Casehachuree & 3 & 4 & 5 & \Casehachuree\\ \cline{2-6}
      & -11 & $X-1$ & \Casehachuree & 6 & 7 \\\cline{2-6}
  \end{tabular}
\end{document}


D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Barrer une case dans un tableau

Messagepar MB » Dimanche 25 Novembre 2007, 19:58

Bon une seule barre ça fait qu'il en manque encore une pour faire une croix. :mrgreen:
Mais c'est pas grave de toutes façons. Je cherche avant tout une procédure compatible pdflatex.
La méthode pstricks que tu proposes pourra sans doute être utile à d'autre puisqu'à priori il n'existe pas de package permettant de faire ça plus simplement.
Il pourrait cependant être intéressant de regarder le code de slashbox car il fait presque ce que je veux là.
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar D.GH » Dimanche 25 Novembre 2007, 20:35

MB a écrit:Bon une seule barre ça fait qu'il en manque encore une pour faire une croix. :mrgreen:
Mais c'est pas grave de toutes façons. Je cherche avant tout une procédure compatible pdflatex.


Bonsoir MB,

Voici une version avec la Croix et PDFLATEX. Attention à la compilation :

Code: Tout sélectionner
 % Compilation sous  Miktex (win32)  : pdflatex -enable-write18 doc.tex


Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% http://www.cnam.fr/maths/Membres/ghorbanzadeh/
% Compilation sous  Miktex (win32)  : pdflatex -enable-write18 doc.tex
\documentclass[12pt,a4paper]{article}
\usepackage[on]{auto-pst-pdf}
\usepackage[latin1]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{textcomp}

\usepackage{array, slashbox,colortbl}
\usepackage{pstricks, pstricks-add}
 \usepackage{amsmath,amssymb,calc}

\newcommand\Lignecouleur{{\let\noalign\relax\rowcolor{green!40!red!45}}}

\newlength{\LongH}
%\setlength{\LongH}{\arraycolsep}
\addtolength{\LongH}{2cm}

\newlength{\LongV}
\setlength{\LongV}{4\tabcolsep}


 \def\Casehachuree{%
  \begin{pspicture}(-2\arraycolsep,-4\tabcolsep)(\the\LongH,\the\LongV)
  \psline[linewidth=2pt](\arraycolsep,\the\LongV)(\the\LongH,-4\tabcolsep)
  \psline[linewidth=2pt](\arraycolsep,-4\tabcolsep)(\the\LongH,\the\LongV)
  \end{pspicture}
}

\begin{document}
  \renewcommand\arraystretch{2}
  \begin{tabular}{l|*{5}{p{2cm}|}}
      &\multicolumn{5}{>{\Lignecouleur}c}{$f_X\ast f_Y$} \tabularnewline \cline{2-6}
      &\backslashbox{$f_X$}{$f_Y$} & 19 & 3 & $X^{\alpha}$ & 16 \tabularnewline \cline{2-6}
     & $X^{\eta}$& \Casehachuree & 3 & \Casehachuree& 5 \tabularnewline \cline{2-6}
     & \Casehachuree & 3 & 4 & 5 & \Casehachuree\tabularnewline \cline{2-6}
      & -11 & $X-1$ & \Casehachuree & 6 & 7\tabularnewline\cline{2-6}
  \end{tabular}
\end{document}


D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Barrer une case dans un tableau

Messagepar François D. » Vendredi 23 Mars 2012, 11:09

Bonjour

Je déterre cet antique topic pour vous soumettre une solution qui marche pas mal, mais que j’aimerais améliorer : insérer

Code: Tout sélectionner
\slashbox{\backslashbox{}{}}{\backslashbox{}{}}


comme contenu d'une cellule. Effet : la case se présente bien sous forme barrée par une croix qui l'occupe complètement.
Le souci est qu'alors cette cellule est automatiquement créée sous forme d'un carré trop gros à mon goût ... Y a-t-il moyen de gérer ça, par exemple pour forcer une largeur ?
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Re: Barrer une case dans un tableau

Messagepar François D. » Samedi 24 Mars 2012, 11:09

Re-bonjour

En fait, je me demandais s'il y avait moyen, dans un tableau, de récupérer la valeur de la largeur et de la hauteur de la case courante ; ainsi, je pourrais tracer ma croix à coup de \psline(0,0)(largeur, hauteur) \psline(0,hauteur)(largeur,0) ...
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot], Yandex [Bot] et 7 invités

cron