# latex.table() function?

Can Sage construct latex code of table? Something like html.table, but with tex-output instead of html-output.

latex.table() function?

add a comment

3

Well... I could not wait for response, so I wrote a simple implementation:

```
def latex_table(content, caption, label, header_rows = 1, header_columns = 0, position = 'htb'):
code = """\\begin{table}[%s]
\\centering
\\caption{\\label{tab:%s} %s}
""" % (position, label, caption)
code += '\\begin{tabular}{|%s|} \\hline\n' % '|'.join('c' for i in range(len(content[0])))
bold_format = '\\textbf{%s}'
for line_no, line in enumerate(content):
row_format_string = bold_format if line_no < header_rows else '%s'
code += ' ' + ' & '.join([(bold_format if column_no < header_columns else row_format_string ) % i for column_no,i in enumerate(line)]) + ' \\\\ \\hline \n'
code += ' \\end{tabular}\n\end{table}\n'
return code
```

This code generates something similar to html.table output for latex. I'll be happy to know someone already wrote a better implementation.

1

Note that now Sage has a `table`

object which can be printed as LaTeX. As per the example in the documentation:

```
sage: rows = [['a', 'b', 'c'], [100,2,3], [4,5,60]]
sage: table(rows)
a b c
100 2 3
4 5 60
sage: latex(table(rows))
begin{tabular}{lll}
a & b & c
$100$ & $2$ & $3$
$4$ & $5$ & $60$
end{tabular}
```

0

If you can put it in a matrix m, then `latex(m)`

will give roughly a latex table.

```
sage: var('x,y,z')
(x, y, z)
sage: latex(matrix([[x*y,x+y,z],[z+y,x-y,x*y*z]]))
\left(\begin{array}{rrr}
x y & x + y & z \\
y + z & x - y & x y z
\end{array}\right)
```

Asked: **
2011-12-31 03:40:09 -0500
**

Seen: **918 times**

Last updated: **Oct 06 '13**

getting blank cells in html.table

Undefined control sequence when showing multiplication table

how to set latex options on graph to make them ultra small ?

Display the Young lattice using Sage and Latex

How to change _latex_ of log to \ln ?

pdfTeX warning: multiple pdfs with page group included in a single page

Sagetex from the notebook - feedback on how I automate things

Multiline equation write form in text cell?

latex expressions don't show on sagenb notebooks intermittently

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.