[codesyntax lang=”python”]

#!/usr/bin/python3
###################################################
# ————
# Programa: graph
# ————
# Objetivo: gerar os graficos das atividades praticas da disciplina TEA013
###################################################

# —————- Arquivos de Entrada e Saida —————————–

finnam = ‘surf1d-ins.dat’ # mudar o arquivo para outro metodo
print(finnam)
fin = open(finnam,’r’) # abre o arquivo de entrada

linhas = sum(1 for line in fin) # conta o numero de linhas no arquivo de entrada
fin.close() # fecha o arquivo de entrada
fin = open(finnam,’r’) # abre o arquivo de entrada

# —————- Cria os Vetores —————————–

from numpy import zeros

x = zeros(linhas)
y1 = zeros(linhas)
y2 = zeros(linhas)
y3 = zeros(linhas)
y4 = zeros(linhas)
y5 = zeros(linhas)

# —————- Leitura e Escrita do Arquivo —————————–

i = 0
for line in fin:
dados = list(filter(None,line.strip().split(‘ ‘)))
#print(dados[0],dados[1])
x[i] = float(dados[0])
y1[i] = float(dados[1])
y2[i] = float(dados[2]) +0.5
y3[i] = float(dados[3]) +1.0
y4[i] = float(dados[4]) +1.5
i += 1

# —————- Gera o grafico com Matplotlib —————————–

import matplotlib.pyplot as plt
from matplotlib import rcParams
rcParams[‘font.family’] = ‘serif’
#rcParams[‘font.sans-serif’] = [‘Palatino’]
rcParams[‘font.sans-serif’] = [‘Bookman’]

print(x)
print(y1)
print(len(x),len(y1))

plt.xlim([0,10])
plt.ylim([0,2.0])
plt.title(‘Onda Cinematica 1D’)
plt.xlabel(‘x’)
plt.ylabel(‘u(x,t)’)

plt.plot(x,y1, label=”Tempo: 0.000″)
plt.plot(x,y2, label=”Tempo: 0.125″)
plt.plot(x,y3, label=”Tempo: 0.250″)
plt.plot(x,y4, label=”Tempo: 0.725″)

plt.savefig(“result-onda1d-ins.png”, dpi = 300) # mudar o nome da figura para outro metodo
plt.show()

[/codesyntax]

Back to Top