1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
| try:
import numpy as np
import FonctionsSignale as fs
from random import uniform
import matplotlib.pyplot as plt
import csv
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import Paragraph, Spacer, SimpleDocTemplate, Table, TableStyle
from reportlab.lib.pagesizes import A4
from datetime import date
from reportlab.lib.units import cm
from reportlab.graphics.charts.lineplots import LinePlot
from reportlab.graphics.shapes import Drawing, String
from reportlab.graphics.widgets.markers import makeMarker
from reportlab.lib import colors
except Exception as e:
print(e)
input('***')
####
styles = getSampleStyleSheet()
styleT = styles['Title']
styleH1 = styles['Heading1']
styleH2 = styles['Heading2']
styleH3 = styles['Heading3']
styleH4 = styles['Heading4']
styleN = styles['Normal']
#####
"""
print('veuillez saisir le nom du fichier de données (txt ou cvs) :')
fichier = input()
print('veuillez saisir le du capteur (H...) :')
numcapteur = input('donnees.txt')
contenue = input('h25')"""
numcapteur = 25
fichier = "donnees.txt"
contenue = []
text="Post traitement du raccordement de l'Hélice "+str(numcapteur)
contenue.append(Paragraph(text, styleH1))
values_sep_paliers,values, values_sep,paliers_find = fs.traitement_signal(fichier, ";", 2,18)
################################
#Quelques calcules sur les paliers
#################################
coeff_gen = fs.gen_coeff(paliers_find)
moyenne = [""]*paliers_find
ecartype = [""]*paliers_find
entete = [("Paliers trouvés","Moyenne [V]","Ecart-type [mV]","Nb de valeurs/palier")]
donneestraitees = [["0"]*len(entete)]*paliers_find
for i in range(paliers_find):
moyenne[i]= np.mean(values_sep_paliers[i])
ecartype[i] = np.nanstd(values_sep_paliers[i])*1000
donneestraitees[i] = (str(coeff_gen[i]),str(round(moyenne[i],4)),str(round(ecartype[i],4)),
str(round(len(values_sep_paliers[i]),4)))
##Le tableau du traitement
contenue.append(Paragraph("Post traitement de la mesure", styleH3))
today = date.today()
d1 = today.strftime("%d %B %Y")
contenue.append(Paragraph("Traitement réalisé le "+d1+" par : Moia, sur le fichier de données :"+fichier, styleN))
contenue.append(Spacer(1, .3*cm))
datat = entete+donneestraitees
contenue.append(fs.myTable(datat))
#contenue.append(Spacer(1, .5*cm))
##
contenue.append(Paragraph("Mesure", styleH2))
contenue.append(Paragraph("Identification des paliers", styleH4))
#tracé de la mesure
v=[]
for i in range (len(values)):
v.append([i,values[i]])
w=190
h = 115
mesure = [v]
mesure_brute =fs.trace_graph('Mesure brute',mesure,w,h)
v=[]
for i in range (len(values_sep)):
v.append([i,values_sep[i]])
mesure = [v]
mesure_sep =fs.trace_graph('Mesure avec paliers',mesure,w,h)
chart_style = TableStyle([('ALIGN', (0, 0), (-1, -1), 'CENTER'),
('VALIGN', (0, 0), (-1, -1), 'CENTER')])
contenue.append(Table([[mesure_brute,'' , mesure_sep]]))
contenue.append(Paragraph("Paliers isolés", styleH4))
#tracé des paliers
data=[""]*len(values_sep_paliers)
for n in range(len(values_sep_paliers)):
data[n]=[]
for i in range (len(values_sep_paliers[n])):
data[n].append([i,values_sep_paliers[n][i]])
w=460
h = 60
data0 = [data[0]]+[data[8]]
graph=fs.trace_graph('Paliers 0',data0,w,h)
contenue.append(graph)
data1 = [data[1]]+[data[7]]
graph=fs.trace_graph('Paliers 1',data1,w,h)
contenue.append(graph)
data2 = [data[2]]+[data[6]]
graph=fs.trace_graph('Paliers 2',data2,w,h)
contenue.append(graph)
data3 = [data[3]]+[data[5]]
graph=fs.trace_graph('Paliers 3',data3,w,h)
contenue.append(graph)
data4 = [data[4]]
graph=fs.trace_graph('Paliers 4',data4,w,h)
contenue.append(graph)
############################
d1 = today.strftime("%Y-%m-%d")
doc = SimpleDocTemplate('PostTraitement_H'+str(numcapteur)+'_'+d1+'.pdf',pagesize = A4,
title = 'Premier test',
author = 'Moi' )
doc.build(contenue) |
Partager