File size: 1,068 Bytes
665124b 84d6f4a 665124b 84d6f4a 665124b 4add438 665124b 81922aa 84d6f4a 81922aa 665124b | 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 | import gradio as gr
import matplotlib.pyplot as plt
from utils import detect_anomalies
def analyze(csv_file):
df, threshold = detect_anomalies(csv_file)
plt.figure(figsize=(10,4))
plt.plot(df.iloc[:,0], label="Sensor")
anomalies = df[df["anomaly"]]
plt.scatter(
anomalies.index,
anomalies.iloc[:,0],
color="red",
label="Anomaly"
)
plt.axhline(
threshold,
color="orange",
linestyle="--",
label="Threshold"
)
plt.legend()
output = "plot.png"
plt.savefig(output)
return output, df
demo = gr.Interface(
fn=analyze,
inputs=gr.File(label="Wgraj plik CSV"),
outputs=[
gr.Image(label="Wyniki analizy"),
gr.Dataframe(label="Wyniki")
],
title="Wykrywanie anomalii (Edge AI)",
description="""
Wykryj nietypowe zachowanie maszyn na podstawie danych z czujników.
1. Pobierz przykładowy plik: [sample.csv](sample.csv)
2. Kliknij „Wgraj plik CSV”.
3. Wybierz plik i zobacz wynik analizy AI.
"""
)
demo.launch() |