π
<-
Chat plein-écran
[^]

NumWorks Python 13.2 : matplotlib.pyplot + tas/heap 32K !

NumWorks Python 13.2 : matplotlib.pyplot + tas/heap 32K !

Unread postby critor » 31 Mar 2020, 22:02

12384
NumWorks
continue à se démener pour t'apporter à domicile le meilleur outil possible en ces temps difficiles. La nouvelle version
NumWorks 13.2
est déjà disponible, et malgré la numérotation les avancées en sont majeures ! :D





1) Python et mémoires

Go to top

Parlons maintenant mémoire. En
Python
il y a plus précisément 3 mémoires :
  • la mémoire de stockage qui accueille et conserve tes scripts
  • le
    stack (pile)
    qui, à l'exécution, accueille les références vers les objets créés
  • le
    heap (tas)
    qui, à l'exécution, accueille les valeurs de ces objets

En gros le
stack / pile
limite donc le nombre d'objets différents pouvant exister simultanément en mémoire, alors que le
heap / tas
limite la taille globale occupé par ces objets.

Dans la dernière version
NumWorks
avait déjà fortement amélioré la mémoire
Python
:
  • en doublant la mémoire de stockage :)
  • en quadruplant le
    stack / pile
    :D
Il restait donc encore à s'occuper du
heap / tas
. ;)
En pratique, le
heap / tas
était selon nous de taille insuffisante sur
NumWorks
quand on considère les tailles énormes occupées en mémoire par les objets
Python
les plus simples.

Si les algorithmes de calculs mathématiques passaient certes nickel, il n'en allait pas de même pour ceux qui sortaient des sentiers battus.

Utilisation de chaînes ou fonctions graphiques pour créer des interfaces, utilisation de listes ou pire listes de listes, projets de
SNT
ou
NSI
, ... l'utilisateur un peu plus intéressé que la moyenne par la programmation en
Python
de sa
NumWorks
était condamné à rencontrer très rapidement des erreurs de mémoire et des problèmes d'optimisation de l'utilisation du
tas / heap
de plus en plus insolubles... :'(

L'appel mem() avec le script
mem.py
suivant permet d'estimer la capacité du
heap / tas
, et retournait jusqu'à présent autour de
16K
sur
NumWorks
.

Code: Select all
def sizeenv():
  s=0
  import __main__
  for o in dir(__main__):
    try:s+=size(eval(o))
    except:pass
  return s
def size(o):
  s,t=0,type(o)
  if t==str:s=49+len(o)
  if str(t)=="<class 'function'>":s=136
  if t==int:
    s=24
    while o:
      s+=4
      o>>=30
  if t==list:
    s+=64
    for so in o:s+=8+size(so)
  return s
def mem(v=1,r=1):
  try:
    l=[]
    try:
      l+=[r and 793+sizeenv()]
      if v*r:print(" ",l[0])
      l+=[0]
      l+=[""]
      l[2]+="x"
      while 1:
        try:l[2]+=l[2][l[1]:]
        except:
          if l[1]<len(l[2])-1:l[1]=len(l[2])-1
          else:raise(Exception)
    except:
      if v:print("+",size(l))
      try:l[0]+=size(l)
      except:pass
      try:l[0]+=mem(v,0)
      except:pass
      return l[0]
  except:return 0

12385Et bien
NumWorks
n'a pas manqué le rendez-vous et s'est bien occupé du
heap / tas
pour cette version. :)

La capacité en est doublée, passant de
16K
à
32K
, enfin ! :bj:

Une véritable bouffée d'oxygène qui devrait
booster
ta créativité, te permettant de poursuivre tes projets bien plus loin avant de ressentir le moindre besoin d'optimisation ! :D

D'où le classement :
Aux examens :
  1. 1,032942 Mo
    :
    Casio Graph 90+E
  2. 1,022145 Mo
    :
    HP Prime
    (version alpha)
  3. 100,560 Ko
    :
    Casio Graph 35+E II
  4. 32,339 Ko

    NumWorks
    (firmware Omega)
  5. 31,624 Ko

    NumWorks
  6. 20,200 Ko

    TI-83 Premium CE Edition Python
  7. 16,259 Ko

    NumWorks
    (ancienne version)
Hors examens :
  1. 2,049276 Mo
    :
    TI-Nspire
    (application MicroPython)
  2. 1,032942 Mo
    :
    Casio Graph 90+E
  3. 1,022145 Mo
    :
    HP Prime
    (version alpha)
  4. 257,636 Ko
    :
    Casio Graph 35/75+E
    (application CasioPython)
  5. 100,560 Ko
    :
    Casio Graph 35+E II
  6. 31,899 Ko
    :
    Casio Graph 35+E II
    (application CasioPython)
  7. 32,339 Ko

    NumWorks
    (firmware Omega)
  8. 31,624 Ko

    NumWorks
  9. 22,605 Ko

    TI-83 Premium CE + TI-Python
  10. 20,200 Ko

    TI-83 Premium CE Edition Python
  11. 19,924 Ko

    TI-83 Premium CE + TI-Python
  12. 16,238 Ko

    NumWorks
    (ancienne version)




2) Python et module matplotlib

Go to top

Accroche-toi bien à ta chaise, le module
Python
de tracé dans un repère tant
teasé
par la concurrence depuis des mois sort enfin là où on ne l'attendait pas, c'est-à-dire sur ta
NumWorks
et même en exclusivité à ce jour ! :D

Il prend le nom de
matplotlib.pyplot
, avec les fonctions listées et documentées ci-dessous :


Réalisons en une fouille un peu plus approfondie à l'aide du script
explmod.py
, à la recherche d'éventuels éléments cachés :
Code: Select all
def getplatform():
  id=-1
  try:
    import sys
    try:
      if sys.platform=='nspire':id=0
      if sys.platform.startswith('TI-Python') or sys.platform=='Atmel SAMD21':id=4
    except:id=3
  except:
    try:
      import kandinsky
      id=1
    except:
      try:
        if chr(256)==chr(0):id=5+(not ("HP" in version()))
      except:
        id=2
  return id

platform=getplatform()
#lines shown on screen
plines=[29,16,  7, 9,11,0,0]
#max chars per line
#(error or CR if exceeded)
pcols =[53,99,509,32,32,0,0]

nlines=plines[platform]
ncols=pcols[platform]
curline=0

def mprint(*ls):
  global curline
  st=""
  for s in ls:
    if not(isinstance(s,str)):
      s=str(s)
    st=st+s
  stlines=1+int(len(st)/ncols)
  if curline+stlines>=nlines:
    input("Input to continue:")
    curline=0
  print(st)
  curline+=stlines

def sstr(obj):
  try:
    s=obj.__name__
  except:
    s=str(obj)
    a=s.find("'")
    b=s.rfind("'")
    if a>=0 and b!=a:
      s=s[a+1:b]
  return s

def isExplorable(obj):
  s=str(obj)
  return s.startswith("<") and s.find(" ")>=0

def explmod(pitm,pitmsl=[],reset=True):
  global curline
  if(reset):
    curline=0
    pitmsl=[sstr(pitm)]
  hd="."*(len(pitmsl)-1)
  spath=".".join(pitmsl)
  c,c2=0,0
  spitm=str(pitm)
  for itms in sorted(dir(pitm)):
    c,c2=c+1,c2+1
    try:
      itm=eval(spath+"."+itms)
      mprint(hd+itms+"="+str(itm))
      if isExplorable(itm) and itm!=pitm:
        pitmsl2=pitmsl.copy()
        pitmsl2.append(itms)
        c2=c2+explmod(itm,pitmsl2,False)[1]
    except:
      mprint(hd+itms)
  if c>0 and reset:
    mprint(hd+"Total: "+str(c)+" 1st level item(s)")
    if c2>0 and c2!=c:
      mprint(hd+"       "+str(c2)+" item(s)")
  return [c,c2]

1238612387

Rien de bien extraordinaire ici, mais on découvre quand même que
matplotlib.pyplot
est lui-même un sous-module de
matplotlib
, ce que le nommage suggérait déjà.

Suite à cet ajout majeur, profitons-en pour voir où nous en sommes niveau richesse du
Python
sur calculatrices:

autorisés aux
examens français
inutilisables aux
examens français
NumWorks
Casio Graph
35+E II
90+E
TI-83PCE
Ed. Python
MicroPython
TI-Nspire
CasioPython
Casio Graph
35+E II
35+E/USB
75/85/95
TI-Python
builtins
array
collections
cmath
gc
math
matplotlib
matplotlib.pyplot
micropython
os
random
sys
time
turtle
uerrno
88-188
.
.
12
.
41
3
11
6
.
9
.
3
38
.
84-175
.
.
.
.
25
.
.
.
.
8
.
.
.
.
92-189
2-4
2
.
7
28
.
.
.
.
8
15-42
4
.
.
97-440
3-13
.
13-17
9-13
42-46
.
.
10-14
.
.
17-63
.
.
25-29
93-218
2-4
.
12
7
41
.
.
3
.
.
15-45
.
.
.
91-204
2-4
.
12
7
41
.
.
6
.
8
12
.
.
24
92-189
2-4
2
.
7
28
.
.
.
.
8
15-42
4
.
.
93-191
2-4
2
12
7
41
.
.
6
15
8
15-45
8-10
.
.
spécifique
ion:48
kandinsky:6
ti_graphics:?
ti_hub:?
ti_plotlib:?
ti_system:12
ti_rover:?
prime:3-7nsp:3-10board:22
storage:7-21
Modules
11
3
13
9
8
9
9
13
Eléments
265-365
117-208
170-296
219-642
176-340
203-318
158-284
238-384

En terme de diversité des modules, la
NumWorks
se fixe donc au 2ème rang, un excellent choix ! :bj:
Aux examens :
  1. 13
    modules :
    TI-83 Premium CE Edition Python
  2. 11
    modules :
    NumWorks
  3. 9
    modules :
    HP Prime
    (version alpha)
  4. 3
    modules :
    Casio Graph 35+E II
    Casio Graph 90+E
Hors examens :
  1. 13
    modules :
    TI-Python
    (firmware tiers)

    TI-83 Premium CE Edition Python
  2. 11
    modules :
    NumWorks
  3. 9
    modules :
    HP Prime
    (version alpha)

    Casio Graph 35+E II
    Casio Graph 35+E/USB
    Casio Graph 75/85/95
    Casio fx-9750GII
    Casio fx-9860GII
    Casio fx-9860G

    (appli CasioPython)
  4. 8
    modules :
    TI-Nspire

    (appli MicroPython)

    TI-Python
  5. 3
    éléments :
    Casio Graph 35+E II
    Casio Graph 90+E

En terme de richesse des modules, la
NumWorks
varie également entre les 2ème et 3ème rangs, toujours de loin un des meilleurs choix ! :bj:
Aux examens :
  1. 219-642
    éléments :
    HP Prime
    (version alpha)
  2. 265-365
    éléments :
    NumWorks
  3. 170-296
    éléments :
    TI-83 Premium CE Edition Python
  4. 117-208
    éléments :
    Casio Graph 35+E II
    Casio Graph 90+E
Hors examens :
  1. 219-642
    éléments :
    HP Prime
    (version alpha)
  2. 238-384
    éléments :
    TI-Python
    (firmware tiers)
  3. 265-365
    éléments :
    NumWorks
  4. 176-340
    éléments :
    TI-Nspire

    (appli MicroPython)
  5. 203-318
    éléments :
    Casio Graph 35+E II
    Casio Graph 35+E/USB
    Casio Graph 75/85/95
    Casio fx-9750GII
    Casio fx-9860GII
    Casio fx-9860G

    (appli CasioPython)
  6. 170-296
    éléments :
    TI-83 Premium CE Edition Python
  7. 158-284
    éléments :
    TI-Python
  8. 117-208
    éléments :
    Casio Graph 35+E II
    Casio Graph 90+E




3) Mon premier script matplotlib

Go to top

L'utilisation de
matplotlib.pyplot
est extrêmement simple.

Avant de faire appel à
matplotlib.pyplot
, tes scripts doivent commencer par importer ce module d'une façon ou d'une autre, par exemple avec from matplotlib.pyplot import *.

Les tracés que tu demandes sont donc effectués dans un repère, sur un calque distinct de celui de la console
Python
. Sans instruction en ce sens, c'est le seul calque de la console qui restera affiché.
A chaque fois que tu souhaites rendre visible le calque du repère avec tes derniers tracés
(par exemple avant la fin de ton script, ou avant que l'utilisateur ait à saisir quelque chose)
, il te faut faire appel à la fonction show().
Cette dernière affiche non seulement le calque du repère avec tes derniers tracés, mais te permet de le faire défiler avec les touches fléchées, et attend l'appui sur la touche d'annulation
pour rendre la main au script.

Tu peux si tu le souhaites activer/désactiver l'affichage d'une grille permettant de mieux lire les coordonnées du repère avec grid().

12392Tu peux également configurer toi-même les bornes de la fenêtre à l'aide de axis([xmin, xmax, ymin, ymax]).
Note toutefois que ce n'est absolument pas obligatoire. Par défaut la fenêtre s'adapte automatiquement pour que soient visibles l'ensemble de tes tracés comme illustré ci-contre par le code ci-dessous ! :bj:
Une petite marge t'est même ménagée. Toutefois, on peut noter ici que l'on n'obtient pas forcément un repère orthonormal
(même unité en abscisse et en ordonnée)
.
Code: Select all
from matplotlib.pyplot import *

def sumvec(u, v):
  return [u[0] + v[0], u[1] + v[1]]

def arrowvec(p0, v, s=''):
  arrow(p0[0], p0[1], v[0], v[1])
  text(p0[0] + v[0]/2, p0[1] + v[1]/2, s)

u = [1, 5]
v = [5, 1]
w = sumvec(u, v)
grid()
lp = [[-5, 0], [5, 0]]
arrowvec(lp[0], u, 'u')
print(sumvec(lp[0], u))
arrowvec(sumvec(lp[0], u), v, 'v')
arrowvec(lp[0], w, 'w')
arrowvec(lp[1], u, 'u')
arrowvec(lp[1], v, 'v')
arrowvec(sumvec(lp[1], u), v, 'v')
arrowvec(sumvec(lp[1], v), u, 'u')
arrowvec(lp[1], w, 'w')
text(0, 0, 'w=u+v')

show()




4) matplotlib et possibilités

Go to top

Comme la bibliothèque
Python
standard
matplotlib
, le
matplotlib
de
NumWorks
dispose d'une fonction bar(x, height) pour le tracé de diagrammes en barres.
La fonction hist(x, bins) sera quant à elle à privilégier pour les histogrammes au sens large
(barres de largeurs différentes)
.

Toujours comme avec
matplotlib
, la fonction scatter(x, y) permet d'afficher une représentation en nuage de points.
plot(x, y) pour sa part reliera en prime les points, mais attention dans l'ordre avec lequel tu les fournis.

C'est déjà une réponse claire aux besoins du programme de
Physique-Chimie
de Seconde, même si un usage en
Mathématiques
n'est pas à exclure, dans la partie
Statistiques
ou encore pour étudier le fonctionnement d'un grapheur de fonctions et éviter les pièges des lectures graphiques. :bj:

Et puis ce n'est pas tout, arrow(x, y, dx, dy) permettra de tracer des flèches pour représenter des vecteurs, aussi bien en
Physique-Chimie
(vecteurs force, vecteur vitesse, ...)
qu'en
Mathématiques
! :bj:
Un petit lancer parabolique avec ça ? ;)
Code: Select all
from matplotlib.pyplot import *
from math import *

g=9.81

def x(t,v_0,alpha):
  return v_0*cos(alpha)*t
def y(t,v_0,alpha,h_0):
  return -0.5*g*t**2+v_0*sin(alpha)*t+h_0

def vx(v_0,alpha):
  return v_0*cos(alpha)
def vy(t,v_0,alpha):
  return -g*t+v_0*sin(alpha)

def t_max(v_0,alpha,h_0):
  return (v_0*sin(alpha)+sqrt((v_0**2)*(sin(alpha)**2)+2*g*h_0))/g

def simulation(v_0=15,alpha=pi/4,h_0=2):
  tMax=t_max(v_0,alpha,h_0)
  accuracy=1/10**(floor(log10(tMax))-1)
  T_MAX=floor(tMax*accuracy)+1
  X=[x(t/accuracy,v_0,alpha) for t in range(T_MAX)]
  Y=[y(t/accuracy,v_0,alpha,h_0) for t in range(T_MAX)]
  VX=[vx(v_0,alpha) for t in range(T_MAX)]
  VY=[vy(t/accuracy,v_0,alpha) for t in range(T_MAX)]
  for i in range(T_MAX):
    arrow(X[i],Y[i],VX[i]/accuracy,VY[i]/accuracy)
  grid()
  show()




5) matplotlib et compatibilités

Go to top

Mais ce qu'il y a de fantastique avec la bibliothèque
matplotlib.pyplot
de
NumWorks
, c'est que les scripts créés sont compatibles aussi bien avec le
Python
des calculatrices
Casio
qu'avec les implémentations
Python
complètes pour ordinateur ! :bj:
Si si, pour la rentrée 2020 les mêmes scripts graphiques
Python
seront exécutables à la fois sur
NumWorks
et sur
Casio
! :D

En réalité chez
Casio
, si nous avons bien compris/deviné il y a :
  • une bibliothèque graphique spécifique du constructeur,
    casioplot
  • un script préchargé
    matplotl.py
    (d'où la limitation historique à 8 caractères en passant)
    , qui joue le rôle d'interface pour cette bibliothèque, une interface fournissant des fonctions d'appel aux spécifications compatibles avec
    matplotlib.pyplot
  • et de même un script préchargé
    turtle.py
    fournissant pour sa part des fonctions d'appel compatibles avec les spécifications de la bibliothèque
    turtle
    standard
Les scripts
Casio
seront donc compatibles à un détail près, la ligne import matplotl.pyplot étant à remplacer par import matplotl ou inversement.

On peut d'ailleurs même avoir du code compatible absolument identique avec la petite astuce d'importation suivante :
Code: Select all
try:
  from matplotlib.pyplot import *
except:
  from matplotl import *


Traitons quelques exemples à la fois sur
NumWorks
,
Casio
et ordinateur pour voir jusqu'où va cette compatibilité.
Ne disposant pas encore de la prochaine mise à jour de
Casio
rajoutant ces fonctionnalités, nous reprendrons des exemples déjà fournis et illustrés par ce constructeur.

Un petit diagramme en barres avec fenêtre automatique :
NumWorks
Casio
ordi
12389
Code: Select all
try:
  from matplotlib.pyplot import *
except:
  from matplotl import *

x = [119.1, 119.3, 119.5, 119.6, 119.9, 120.0, 120.1, 120.3, 120.4]
y = [1, 3, 4, 3, 1, 3, 1, 3, 1]

bar(x, y, 0.08)
show()

Des couleurs différentes, des barres qui sont parfois remplies parfois non, mais cela n'en est pas moins parfaitement fonctionnel sans le moindre changement autre que l'importation, c'est fantastique ! :bj:

Un petit nuage de points en précisant la fenêtre et avec un titre :
NumWorks
Casio
ordi
12390
Code: Select all
try:
  from matplotlib.pyplot import *
except:
  from matplotl import *

x = [100, 110, 120, 130, 140, 150, 160]
y = [105, 95, 75, 68, 53, 46, 31]

scatter(x, y)
axis([80, 170, 10, 130])
text(110, 125, "Nombre d'acheteurs vs prix de vente")
show()

Casio
utilisant ici pour le titre des coordonnées absolues prévues pour son écran, forcément ça passe moins bien sur l'écran
NumWorks
de géométrie différente et il faut ici faire défiler avec les flèches.

Un diagramme en ligne brisée pour approcher une fonction :

NumWorks
Casio
ordi
12395
Code: Select all
try:
  from matplotlib.pyplot import *
except:
  from matplotl import *

def fonction():
    def f(x):
        return x**3-6*x**2+9*x+1
    start = -0.5
    end = 4.5
    steps = 0.1
    x = [start+i*steps for i in range(int((end-start)/steps)+1)]
    y = [f(j) for j in x]
    plot(x, y)
    show()

On remarque mieux ici que
NumWorks
utilise une graduation sur les axes, alors que les autres utilisent une graduation en bordure de fenêtre.

Et enfin quelques flèches/vecteurs :
NumWorks
Casio
ordi
12391
Code: Select all
try:
  from matplotlib.pyplot import *
except:
  from matplotl import *

arrow(0.20, 0.54, 0, -0.15)
arrow(0.30, 0.46, 0, -0.15)
arrow(0.40, 0.59, 0, -0.15)
show()

Personne ne semble tracer les pointes de flèches de la même façon, mais au moins ça marche.




Conclusion

Go to top

Grosse surprise donc de la part de
NumWorks
que ce soit pour le
tas / heap
Python
de
32K
ou pour la bibliothèque de tracés dans un repère
matplotlib
, nous ne nous y attendions pas.

Bravo pour avoir su écouter les retours et fournir un
tas / heap
qui devrait permettre d'aborder sereinement certains des projets de
SNT
/
NSI
, plus ambitieux que les petits algos de calcul traités en
Mathématiques
. :bj:
C'est en tous cas un très bon signal envoyé aux enseignants-prescripteurs concernés par ces matières pour la rentrée 2020. ;)

Félicitations pour avoir réussi à incorporer une bibliothèque de tracés dans un repère fonctionnelle, et ce dans un temps apparemment plus court que la concurrence. :bj:
Et surtout, merci d'avoir opté dans ce cadre pour un standard déjà existant,
matplotlib.pyplot
, en conformité avec ce qui est mis en avant auprès des futurs enseignants de
NSI
à l'oral de leur concours, et donc pour la compatibilité aussi bien avec
Casio
qu'avec les implémentations
Python
complètes ! :D
L'enseignant pourra ainsi gérer des classes disposant de modèles de marques différentes, et librement faire des aller-retours entre calculatrices et ordinateurs ! :D

Et puis petite surprise, visiblement
NumWorks
tient compte en un temps record de toutes les critiques, même des plus insignifiantes. :p

Malgré les ajouts importants le nouveau
firmware
13.2.0
est sensiblement moins gros que le
13.1.0
.

Il semble y avoir donc eu quelques optimisations dans ce court laps de temps, et l'ancien modèle
NumWorks N0100
malgré sa
Flash
de seulement
1 Mio
devrait donc pouvoir continuer à bénéficier de l'ensemble des nouveautés pendant quelques mises à jour encore. :)

Liens
:
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 8.6%
 
Posts: 35934
Images: 9790
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti
GitHub: critor

Online

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby cent20 » 31 Mar 2020, 22:05

critor wrote:Et bien NumWorks n'a pas manqué le rendez-vous et s'est bien occupé du heap / tas pour cette version.

La capacité en est doublée, passant de 16K à 32K, enfin ! :bj:

Une véritable bouffée d'air frais qui devrait booster ta créativité, te permettant de poursuivre tes projets bien plus loin avant de rencontrer le moindre besoin d'optimisation !


Non Critor, désolé mais cette fois tu ne nous aura pas !

Image

Même si tu as publié avant la date, on ne te croit pas !
Image
Enseignant de mathématiques et de spécialité NSI ( projets, tutos ...)
:favorite: NumWork, Python : démineur, snake, tétris
User avatar
cent20Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 5.1%
 
Posts: 475
Images: 37
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
Twitter: nsi_xyz

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby critor » 31 Mar 2020, 22:08

Mais si, mais si, tu en rêves depuis des mois, regarde : :D
12385
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 8.6%
 
Posts: 35934
Images: 9790
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti
GitHub: critor

Online

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby cent20 » 01 Apr 2020, 08:15

Je peine à y croire.

Est-il possible qu'ils aient installé un timer dans l'OS et que dès le 2 avril le heap redescende à 16 ko ? :troll:

Pour matplotlib, les exemples proposés dans la documentation sont très intéressants, reste à savoir quels fonctions ont été implémentés et lesquelles ne l'ont pas été.

La Gallerie rassemble de vraies oeuvres d'art, on oublie souvent que les mathématiques c'est un art, c'est d'ailleurs pour cela qu'il n'y a plus de cours d'art plastique au lycée et que l'horaire de maths en seconde lui augmente un petit peu.
Image
Enseignant de mathématiques et de spécialité NSI ( projets, tutos ...)
:favorite: NumWork, Python : démineur, snake, tétris
User avatar
cent20Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 5.1%
 
Posts: 475
Images: 37
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
Twitter: nsi_xyz

Online

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby Dogm » 01 Apr 2020, 08:59

cent20 wrote:La Gallerie rassemble de vraies oeuvres d'art, on oublie souvent que les mathématiques c'est un art, c'est d'ailleurs pour cela qu'il n'y a plus de cours d'art plastique au lycée et que l'horaire de maths en seconde lui augmente un petit peu.


Et que les maths disparaissent du tronc commun en 1ère :troll:
User avatar
DogmEcrivain
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 9%
 
Posts: 113
Images: 7
Joined: 14 Nov 2019, 18:53
Location: Lyon, France
Gender: Male
Calculator(s):
Class: Lycéen 1ère Math, SI & NSI
GitHub: tim_ats_d

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby critor » 01 Apr 2020, 09:03

Dogm wrote:
cent20 wrote:La Gallerie rassemble de vraies oeuvres d'art, on oublie souvent que les mathématiques c'est un art, c'est d'ailleurs pour cela qu'il n'y a plus de cours d'art plastique au lycée et que l'horaire de maths en seconde lui augmente un petit peu.


Et que les maths disparaissent du tronc commun en 1ère :troll:


La presse a tendance à l'oublier dans sa communication, mais pour être précis les Maths n'étaient déjà pas un tronc commun avant la réforme.
Il n'y en avait pas de façon obligatoire en série L.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 8.6%
 
Posts: 35934
Images: 9790
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti
GitHub: critor

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby redgl0w » 01 Apr 2020, 09:07

cent20 wrote:
critor wrote:Et bien NumWorks n'a pas manqué le rendez-vous et s'est bien occupé du heap / tas pour cette version.

La capacité en est doublée, passant de 16K à 32K, enfin ! :bj:

Une véritable bouffée d'air frais qui devrait booster ta créativité, te permettant de poursuivre tes projets bien plus loin avant de rencontrer le moindre besoin d'optimisation !


Non Critor, désolé mais cette fois tu ne nous aura pas !

Image

Même si tu as publié avant la date, on ne te croit pas !


On ne notera pas le poisson d'avril de numworks x3
https://github.com/numworks/epsilon/pull/1428
User avatar
redgl0wGénéreux
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 70.8%
 
Posts: 92
Joined: 30 Oct 2019, 20:36
Gender: Male
Calculator(s):
Class: 2nde
GitHub: RedGl0w

Online

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby Ti64CLi++ » 01 Apr 2020, 09:11

Petite coquille dans le classement pour la taille du heap hors examen, la Numworks avec Omega devrait être avant la Casio Graph 35+E II avec Casio Python.
Ou alors une erreur dans la valeur ;)
Image
User avatar
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 1.3%
 
Posts: 3330
Images: 75
Joined: 04 Jul 2014, 14:40
Location: Clermont-Ferrand 63
Gender: Male
Calculator(s):
Class: MP
GitHub: Ti64CLi

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby redgl0w » 01 Apr 2020, 09:16

Ti64CLi++ wrote:Petite coquille dans le classement pour la taille du heap hors examen, la Numworks avec Omega devrait être avant la Casio Graph 35+E II avec Casio Python.
Ou alors une erreur dans la valeur ;)


Ca doit être un problème dans le classement et pas dans les valeurs
Du moins pour omega, la valeur semble bonne (https://github.com/Omega-Numworks/Omega ... /app.h#L75)
User avatar
redgl0wGénéreux
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 70.8%
 
Posts: 92
Joined: 30 Oct 2019, 20:36
Gender: Male
Calculator(s):
Class: 2nde
GitHub: RedGl0w

Online

Re: NumWorks Python 13.2 : mathplotlib.pyplot + tas/heap 32K

Unread postby Ti64CLi++ » 01 Apr 2020, 09:21

Je pensais plus à la valeur pour la Casio Graph 35+E II mais tu as sûrement raison. Faut juste attendre que critor confirme et corrige, parce que j'ai peur de faire une bêtise si je le fais moi même ^^
Image
User avatar
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 1.3%
 
Posts: 3330
Images: 75
Joined: 04 Jul 2014, 14:40
Location: Clermont-Ferrand 63
Gender: Male
Calculator(s):
Class: MP
GitHub: Ti64CLi


Return to News NumWorks

Who is online

Users browsing this forum: No registered users and 16 guests

-
Search
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.2 pour les Nspire CX II
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
849 utilisateurs:
>818 invités
>25 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)

-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)