Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Diferença dos gráficos pela identação.

Realizando a tarefa da aula, notei que o código funciona de forma diferente ao indentar de forma diferente. No primeiro caso, os três gráficos são plotados corretamente, porém, no segundo caso o único gráfico plotado é o referente a ultima lista de notas na variável "notas", que, no caso, é a "notas_geografia"

Primeiro caso:

import matplotlib.pyplot as plt

notas_matematica = ['Matemática',8,7,6,6,7,7,8,10]
notas_portugues = ['Português',9,9,9,8,5,6,8,5]
notas_geografia = ['Geografia',10,10,6,7,7,7,8,7]

notas = [notas_matematica, notas_portugues, notas_geografia]
cores = ['b', 'g', 'r']

for indice, nota in enumerate(notas):
  x = list(range(1, 9))
  y = nota[1:]

  plt.plot(x, y, marker ='x', color=cores[indice])
  plt.xlabel("Provas")
  plt.ylabel("Notas")
  plt.title(nota[0])
  plt.show()

Segundo caso:

import matplotlib.pyplot as plt

notas_matematica = ['Matemática',8,7,6,6,7,7,8,10]
notas_portugues = ['Português',9,9,9,8,5,6,8,5]
notas_geografia = ['Geografia',10,10,6,7,7,7,8,7]

notas = [notas_matematica, notas_portugues, notas_geografia]
cores = ['b', 'g', 'r']

for indice, nota in enumerate(notas):
  x = list(range(1,9))
  y = nota[1:]

plt.plot(x, y,marker ='o', color=cores[indice])
plt.title(nota[0])
plt.xlabel("Provas")
plt.ylabel("Notas")
plt.show()
1 resposta
solução!

Olá,

No python a identação é muito importante, no seu primeiro caso os "plt.plot" estão dentro do seu laço for, e são executados todas as vezes, no segundo caso o for é executado e acaba quando você deixa de identar, logo o plot.plot é só é executado uma única vez, ao final do código.

Abs