in case that the entire screen update takes more time than the OnEvent is triggered, there will be no problem, because the signal will not be delivered before the previous update is finished. This means, there will be no overlapping signals.
Concerning the performance: In case you add new data to the graph, it will be redrawn completely. This is the default implementation of the provided graph class. Of course, it is possible to create an own implementation of a graph class, that draws only the new values into a bitmap and copies the bitmap on the screen. Or the usage of vector graphics may help to improve the performance. But this depends on your particular use-case.
So let me ask some questions:
What kind of data do you want to display?
How many data values does your graph contain (number of coordinates)?
What is the size of the graph?
What update rate (frames per second) do you have / do you want to achieve?