

Pour tes scripts
Python, ta
TI-83 Premium CE Edition Python dispose d'un module intégré
ti_plotlib.
Il s'agit d'une bibliothèque offrant des possibilités de tracé dans un repère orthogonal, conformément aux programmes de
Mathématiques et
Physique-Chimie. Au menu nous avons les types de diagrammes suivants :
- nuage de points
- diagramme en ligne brisée
- droite de régression linéaire
Contrairement à matplotlib.pyplot, le module intégré ti_plotlib ne permet donc pas de tracer des histogrammes ou diagrammes en bandes.


Heureusement
Texas Instruments a publié une solution l'
année dernière,
ce_chart.
ce_chart est un module
Python additionnel à charger sur ta calculatrice, permettant entre autres le tracé des diagrammes en bandes.
- Code: Tout sélectionner
from random import *
from ce_chart import *
n = 5
cx = [randint(0, n ** 2) for i in range(n + 1)]
connex = [("Me", cx[1] / n), ("Li", cx[2] / n), ("Si", cx[3] / n, ("Ja", cx[4] / n), ("Ck", cx[5] / n)]
cht = chart()
cht.data(connex)
cht.title("Lorem ipsum")
cht.frequencies(2)
cht.show()


Mais ce n'est pas tout,
Texas Instruments a également eu la bonne idée d'exposer la fonction interne de tracé de rectangle servant pour les barres d'histogramme dans un 2
nd onglet de menu.
Contrairement à la fonction
drawRect() du module intégré
ti_graphics, ici cela permet de travailler non pas en comptant les pixels, mais directement avec les coordonnées dans le repère du diagramme !

Une application par exemple en Mathématiques, c'est l'approche de l'aire entre deux courbes par la méthode des rectangles. Et la fonction
draw_fx() est justement là pour compléter le tracé avec la ligne brisée correspondant à la courbe en question.
- Code: Tout sélectionner
from ce_chart import *
import ti_plotlib as plt
from math import *
cht = chart()
plt.cls()
plt.window(-pi, pi, -1.1, 1.4)
plt.grid(.6, .40, "solid")
plt.color(0,0,0)
plt.axes()
f = lambda x:sin(x)
def calc_area(n, min, max, fx):
sum = 0
dx = (max - min) / n
for i in range(0, n)
a_rectangle = rectangle(min, 0, dx, fx(min + dx/2), 'b')
sum += a_ractangle.area
a_rectangle.draw()
min += dx
return sum
draw_fx(-pi, pi, f, 40, "g")
the_area = calc_area(50, -pi, pi, f)
plt.title("Somme des Aires = " + str(round(the_area, 4)))
plt.show_plot()


Aujourd'hui
Texas Instruments nous publie sur son portail de ressources
T3 France une mise à jour de
ce_chart.
La publication initiale était en version
1.0 même si ce numéro n'était pas affiché, juste indiqué en interne dans le fichier. La nouvelle version rajoute un onglet
ver permettant de récupérer les informations du module sous la forme d'une ligne de commentaire
Python indiquant cette fois-ci une version
1.00 :
#ce_chart module version 1.00


Nous notons dans l'onglet
ce_chart plusieurs corrections de coloration, les éléments à compléter par l'utilisateur dans les formes proposées étant usuellement indiqués en bleu.


Dans l'onglet
Rectangle nous trouvons des corrections de coloration similaires, mais également d'autres changements.
Peut-être une petite confusion entre le développement de la version française de
ce_chart et d'une éventuelle version anglaise de ce même module, la forme proposée pour la fonction
rectangle() voit son paramètre de largeur
l soudainement renommé
w, pour
width en Anglais.
La forme proposée au menu pour le calcul d'aire via la méthode
var.area() devient maintenant une affectation, ce qui t'épargnera la saisie systématique de l'opérateur d'affectation à chacune de ses utilisations.
La variable contenant la fonction n'est plus nommée
f1 au menu mais
f, ce qui permet de gagner de la place et enfin d'avoir une forme complète affichée au menu pour la fonction
draw_fx().


Enfin, il y avait un problème avec la version précédente de
ce_chart.
La spécification de la fonction
draw_fx() est la suivante :
- Code: Tout sélectionner
draw_fx(x_min, x_max, fonction)
draw_fx(x_min, x_max, fonction, nombre_de_points)
draw_fx(x_min, x_max, fonction, nombre_de_points, couleur)
En l'absence du paramètre
nombre_de_points,
draw_fx() trace la courbe correspondante en qualité maximale.
Or le menu te proposait la forme suivante :
draw_fx(x_min, x_max, couleur, f1)
Ce qui était complètement faux. Si tu respectais la forme du menu, te te retrouvais donc à mettre la couleur à la place de la fonction, et la fonction à la place du nombre de points, et donc avec une erreur.
Et tu étais bien invité·e à respecter cette mauvaise forme, la forme saisie à compléter étant
draw_fx(,,,"",f1)
. Ton script ne pouvait donc fonctionner en l'état.



Plus de problème avec la nouvelle version, la forme
draw_fx() affichée au menu ainsi que celle à compléter saisie ont toutes deux été corrigées conformément à la spécification !
