Table des matières

Tableaux

1. Élément <table>

L'attribut type précise le type de tableau.

1.a. Type data

Dans ce cas, le tableau est défini par un élément <datatable>. Celui-ci peut être soit directement inclu dans l'élément table, soit référencé par l'attribut src, qui désigne un fichier XML ou bien l'identifiant d'un élément interne.

2. Élément <datatable>

Cet élément définit un tableau de données, nombres ou chaines de caractères. Les éléments inclus (obligatoires sont):

Exemple de fragment xml définissant un tableau :

<table type="data">
    <datatable id="tableDiff"> 
        <title>Conduction thermique</title> 
        <type>%s;%g;%g;%g;%g</type> 
        <head separator="#">Materiau#&lambda; (W/m/K)#&rho; (kg/m^3)#c (J/K/kg)#D (m^2/s)</head> 
        <data separator="[ ]+" decimalpoint=".">
Aluminium 237 2700 897 9.8e-5 
Fer 80.2 7870 449 2.3e-5
Tungsten 174 19300 132 6.8e-5  
Eau(l) 0.61 1000 4180 1.5e-7 
Eau(s) 2.2 917 2050 1.2e-6  
Azote(g) 0.026 1.15 1040 2.2e-5  
Silice 1.4 2200 703 9.0e-7   
        </data>       
    </datatable>
</table>
                

qui donne le tableau suivant :

Conduction thermique
Materiauλ (W/m/K)ρ (kg/m3)c (J/K/kg)D (m2/s)
Aluminium23727008979.8e-05
Fer80.278704492.3e-05
Tungsten174193001326.8e-05
Eau(l)0.61100041801.5e-07
Eau(s)2.291720501.2e-06
Azote(g)0.0261.1510402.2e-05
Silice1.422007039e-07

3. Génération par python

Pour calculer des données et les placer dans un tableau, utiliser un élément <py> et écrire le code python pour générer le tableau.

Exemple :

        <table type="data">
            <datatable>
                <title>Tableau généré</title>
                <type>%g;%g</type>
                <head separator="#">x#sin(x)</head>
                <py name="data">s=""
for k in range(5):
    x = k*0.1
    y = math.sin(x) 
    s = s+"%g %g\n"%(x,y)
data = doc.createTextNode(s)
element.appendChild(data)</py>
            </datatable>
        </table>
        
Tableau généré
xsin(x)
00
0.10.0998334
0.20.198669
0.30.29552
0.40.389418
Creative Commons LicenseTextes et figures sont mis à disposition sous contrat Creative Commons.