The reason I did not answer this earlier is that Line graphics
covers so much that it is hard to give a reasonable answer, e.g. you could be trying to create lines for forms for users to enter data.
As my main needs for graphics with Prolog were for graphs (nodes and edges), years ago I use to use GraphViz but the images were static, a user could not interact with the image. A step up from that is PlantUML but still the images are static because they are generated using GraphViz. Today I prefer Cytoscape.js . (ref)
There are some topics on this site related to these but I don’t know if these are what you need so can’t say much more.