Depending on what you are having in mind, you will find that the Canvas GUI API is lacking many widgets that would be useful:
http://wiki.flightgear.org/Canvas_Widget_Matrixhttp://wiki.flightgear.org/Howto:Creati ... GUI_WidgetThus, you would end up using either a conventional PUI dialog, or create custom widgets from scratch.
Alternatively, a good/better workaround may be to use a raster image and register event listeners, to show an embedded canvas with the actual graph - that is an approach that F-JJTH originally came up with. Basically, you'd have a "shell" with controls (think widgets) and an inner canvas showing the actual graph, which is accomplished using clipping (you can treat another canvas as a raster image and place it in an outer canvas) - for example, the red area is treated as a screen region, where the instrument is displayed, whereas the outer area is just a conventional raster image that responds to "events" to set up the instrument/oscilloscope):
Note that this would make it possible to have all sorts of custom "skins" (think themes) for your "oscilloscope" - if that's what you are having in mind, i.e. without having to create any missing GUI widgets from scratch, and also without having to use the legacy PUI engine.
It also seems that there is quite a bit of existing artwork available at wikimedia commons:
https://commons.wikimedia.org/w/index.p ... zi0zvzb9rkIf that's something that you'd like to explore, the relevant pointers are these:
PS: obviously, the "skin" could just as well be an SVG/vector image, too - I once shared code demonstrating how to make the svg parser deal with raster images, too:
http://wiki.flightgear.org/Howto:Extend ... SVG_moduleI am not sure though, If I would necessarily use the "FG" prefix for most addons, because the existing ones don't seem to be using one neither, and FG addons are FG specific anyway...