As far as I understand, the feature you are looking for in graph drawing is called "incremental layout" or "partial layout".
Incremental layout will help you make incremental changes to a graph or network (adding or removing nodes or edges) and then will recalculate the layout ("align the nodes"), adjust the edge paths and possibly rearrange the labels in order to get a nice new picture. The difference to a full layout from scratch is that the location of the existing elements is considered for the new layout and new elements are inserted into the drawing in order to not completely destroy the mental picture of the drawing in the mind of the user. This might result in the original elements being moved (e.g. in order to compact regions where elements have been removed), but the relative positions of the existing elements to each other is kept.
Partial layout will not change any of the existing elements but will apply the new layout to that part of the graph that is "new", only. This keeps the locations and paths of the existing elements, but might lead to less optimal results.
To my best knowledge these features are available only in very few graph drawing libraries. Only for the conceptionally very simple algorithms (those based on spring embedders and maybe tree layouts), this feature is easy to implement and thus might be available in more libraries.
The company I work for provides the yFiles Graph Drawing Libraries for Java, .net, and Javascript. These libraries support these types of layouts. The only other library that I am aware of that should be able to supports these kind of features is TomSawyer Layout.