0

I'm looking for a tool with a specific set of features, and I am not finding any.

  • Can generate the diagrams from text, like yUML. This is not mandatory but will make mi life a lot easier.
  • If the previous feature is enriched with preview and code completion or a visual editor it would be much better.
  • The most important feature is to be able to link to specific fields inside an entity. It does not matter if they are table fields or class properties, it is very important that I can link to a specific one. You can see an example below in the image attached. I was unable to find any text-to-diagram tool that does this. The only tool that can do this from my knowledge is lucidChart.
  • It avoids lines crossing as much as possible, and when it is not possible to avoid use a semicircle to make clear which line is crossing which one. You can see this also in the example below.
  • Human readable output. It's useless if I would be unable to understand the diagram.
  • Accepts colors. It would be ideal if I can specify the color of each line.
  • Lines can contain text
  • [optional] Shows how many arrows are exiting from certain property or entity.

enter image description here

Please specify any tool that has most of the features, does not matter if it does not satisfy all of them. It would be a plus if the editor is hackable, for example with javascript.

I can consider javascript libraries as long as I don't have to program an entire framework to use them.

Thanks in advance.

Danielo515
  • 5,996
  • 4
  • 32
  • 66

2 Answers2

0

http://www.graphviz.org/ is tried and true - there are GUI tools for it too, like http://vincenthee.github.io/DotEditor/

flowtron
  • 854
  • 7
  • 20
0

The feature "link to text" that you are looking for is commonly referred to as "linking to ports". Nodes/vertices and sometimes also edges/connectors can have ports and edges don't directly connect to nodes, but to ports. So for each text field in your example you could define a port and then you can have zero or more edges linking to that exact port.

I don't know whether your requirement of not having to "program an entire framework" is met by my proposed tool, which is in fact a commercial Javascript library: yFiles for HTML does inherently support ports and automatic diagram layouts that can consider these ports (see the documentation about the concepts called Port Constraints and Port Candidates).

The view component of the library also supports bridges/jumps/semicircles for crossings and importing your own graph from your very own text format is easy with the API. Of course interactively creating the graphs is possible, too.

Disclaimer: I work for the company that creates that library, however I do not represent my employer on SO. See here for more Javascript diagramming libraries - only very few of them inherently support ports and next to none of them have sophisticated automatic layout algorithms that can work with ports and constraints. However there are free alternatives that may be enough for simple use-cases.

Community
  • 1
  • 1
Sebastian
  • 7,729
  • 2
  • 37
  • 69