4
respostas

[Projeto] Gerando gráficos

Exercicio da aula gerando graficos:

import matplotlib.pyplot as plt

x = list(range(1,9))
y = math_grades

plt.plot(x,y, marker = 'o')
plt.title('Math grades')
plt.xlabel('Provas')
plt.ylabel('Notas')
plt.show()
4 respostas

Fui exercitar alguns conteudos da aula e me deparei com um problema:

  • O código gera 5 gráficos e eu não entendi por quê, e também onde está o erro, creio ser no while.

Pode me ajudar por favor?

notas = [] i = 0

while i != 5: i = i + 1 nota = input('Digite: ') nota = int(nota) notas.append(nota)

media_notas = (sum(notas))/i print(f'A média é {media_notas}.') if media_notas > 5: print('Aprovado!!') else: if media_notas >= 3: print('Recuperação') else: print('Reprovado')

import matplotlib.pyplot as plt for nota in notas: x = list(range(1,6)) y = notas[0:] plt.plot(x, y, marker='o') plt.xlabel('Provas') plt.ylabel('Notas') plt.title('Exercitando') plt.show()

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Boa tarde jefferson,

O gráfico está aparecendo 5 vezes porque ele está dentro do laço:

import matplotlib.pyplot as plt
    for nota in notas:
        x = list(range(1,6)) 
        y = notas[0:] 
        plt.plot(x, y, marker='o')
        plt.xlabel('Provas')
        plt.ylabel('Notas')
        plt.title('Exercitando')
        plt.show()

Como sua lista 'notas' tem 5 valores, o laço vai se repetir 5 vezes. Os gráficos são iguais porque as variáveis x e y recebem os mesmo valores nas 5 repetições. Achei bacana a primeira parte do seu código que interage com o usuário pedindo as notas e cria a lista 'notas' através de um loop. Mas não é necessário utilizar o for para criar o seu gráfico.

Muuuito obrigado.

Retirei o "for"

Deu certinho agora!!!

Resultado - foto mostrando o resultado da mudança do código

Disponha meu bom ;)