If you can restrict yourself to Mountain Lion and above, SceneKit seems to be a promising place to start. You'll have to manage the layout geometry yourself (actual positions of the nodes/edges), but you get hit testing and geometric primitives for free. Properties and textures are animatable: you can enlarge a node, darken an edge, change a number or color, all with your favorite Core Animation style calls.