Se lo devi scrivere da zero potresti farlo in python, i due linguaggi possono cooperare. Realizzi il grafico con la libreria Matplotlib in python e passi i dati dal programma in C che li pesca dal microcontrollore.
Mai programmato in Python, mi richiederebbe troppo tempo.
Mi è stato invece consigliato di far uscire i valori tramite socket, il che sembra più appropriato per me (che ho già usato socket in passato) ma a quel punto non so che strada prendere per il grafico.