Gtk works quite well in operating cross-platform, it isn't quite as cross-platform as c, but has the potential to be. The cross-platform functionality comes from glib where there are numerous wrappers around functions that implement differently on different platforms (e.g. printf). Hey you can even run it on Windows; at least `run' as much as anything can.
The gtk.org site has links in the documentation page to tutorials, a wide range of which is from zetcode. It is all gtk+2 stuff though it is only rare instances where modifications are needed to convert to gtk+3. One of the tutorials covers tables (layout management).
There's no graphing widget in gtk; however, many have designed their own custom widgets (a tutorial for which is also on the gtk site) including myself (
https://github.com/pchilds/GtkPlot/tree/master/PlotLinear -- probably not the best example of easy to understand coding). These can be edited to your needs.
The events you talk about are simple to implement as you are picking up these values from somewhere you just need a conditional test and function call (i.e. this can be done in any programming language)
I'm not familiar with Java so can't really answer your 4th question except to say if you can do it in c (very likely) then the rest is trivial.
Any specific issues you have can be discussed in this forum, though don't bother refreshing too often. People on the forum are distributed around the world (so it could often be 24hrs)