How can I change the way in which two edges intersect in graphviz dot? - dot

Basically, I would like to achieve something like this:

Related

Non-Directional Graph with Echarts

Is there a way to create a non-directional graph with Echarts? I'm trying to follow the example in the documentation:
https://echarts.apache.org/examples/en/editor.html?c=graph-simple
And so far I managed to leave it like this:
https://codesandbox.io/s/echarts-for-react-piehalfrose-forked-hkzz9z?file=/src/index.js
But the problem is that when I move the mouse over the edge it still show the direction of edge.
My goal was to create a graph like this:
My Objective with the Graph

External node color in Gephi

I'm trying to create a graph in Gephi. This graph is undirected and has over 100 nodes. I would like to color the nodes in this graph according to my convenience. Say I'd like to color the nodes in 9 different colors. For doing this, I downloaded a plugin to Gephi which may be found here.
Though the plugin works, I still have to go and enter the color value for every single node manually. There doesn't seem to be a way to do this programatically. And I'd have to create about 10 such graphs, so that means a lot of manual labor.
Can someone help me out with this problem? Does someone know a better way to have custom colors for each node generated programatically? At this point, I'm generating a .gdf file, the format looks something like this.
I also know that Gephi is quite buggy, is there any other graph visualization software that I can use? Out of the other usual things that one does to the graph, I definitely want the capability to set edge weights. In other words, I'd like to make the edges thicker if the edge weight is more and vice-versa.
I can't use D3 coz I don't know Javascript. I looked into using GraphViz but it seems like it requires a lot of manual manipulation of the graph file. I'd like to have something that I'm able to generate programatically.
What seems to be working is to add a column named color VARCHAR where you add the color hex value prepended with the # sign and no quotes.
Example:
nodedef> name,label,color VARCHAR
a,"Apple",#00ffdd
b,"Banana",#00ddff
c,"Cherry",#dd00ff
d,"Did it!",#0012ca
e,"Ed 209",#121212
edgedef> node1,node2,weight
a,b,2
b,c,30
b,d,0.4
d,e,200
Edit:
For a more informed answer take a look at the Gephi documentation. The color values in the link are rgb triples but I tried with hex and it worked

Graph with auto layout using d3 (a tree with multiple parent nodes)

How to draw a graph with auto layout, many-to-many with lines not crossing the boxes using d3?
I'd like to accomplish something like this:
http://www.graphdracula.net/showcase/
http://live.yworks.com/yfiles-for-html/1.1/demos/DataBinding/demo.yfiles.binding.interactivegraphsource/index.html
I guess that's the best description of what I need (something like tree, but with multiple parents):
Dagre-d3 is the best solution that I found:
https://github.com/cpettitt/dagre-d3
For anyone else who comes across this, here's another possible solution: (see the "Directed Graph with downward-pointing edges" example)
http://marvl.infotech.monash.edu/webcola/
It can also be plugged into d3.js and used in place of the force layout.
To minimize line crossings, you probably need a layered digraph layout. Just google that phrase.

When using wildcards to graph metrics is there a way to force an order on the matching metrics?

I've got two graphs that use the something like the following metrics :
graph1 : oldMethod.latencies_msec.percentiles.p{25,50,75,90,95,99}
graph2 : newMethod.latencies_msec.percentiles.p{25,50,75,90,95,99}
I'd like these two graphs to use the same colors for similar metrics. I don't care much about the colours but would like the two p25s in both graphs to have the same color, the two p50s to have the same color and so on.
If I don't use wildcards and use 6 different data lines for each graph and order the metrics the same way for both graphs, then I get consistent colors but if I use wildcards the ordering of the metrics seems arbitrary.
Is there anyway to fix the ordering? If not any insight into the logic behind the metric ordering would be helpful.
There is a change in works that will solve this problem. Here is the link to it in github - https://github.com/graphite-project/graphite-web/pull/831.
You might have to do sortByName(aliasByNode(your_metrics_here, position)) to get shorter names that can be sorted conveniently for metrics to be rendered in the right order. You have to also make sure you have the same number of nodes in all the graphs to get the desired result.
You can assign a color manually to a metric like so:
&target=color(my.data.here,"blue")
see bgcolor
http://graphite.readthedocs.org/en/1.0/url-api.html#bgcolor
Now to order, you can use something like:
target=limit(sortByMaxima(my.data.here,8)

Draw real graph (graphviz?)

I´m working with different graph algorithms, and for testing, and see the results, i need to visualize the graph.
I´m trying to use graphviz for visualization, but i dont want to use any Layout Engine, just use the real coordinates of the points.
For example: some TSPLIB instances have coordinates like: 1.54400e+04 8.88800e+03
Is this posible? should i use another tool?
Thanks in advance !
Define the nodes like
nodename [pos="2,4!"];
to position them at (x=2|y=4) (the unit is inches).
Try GoogleCharts
http://code.google.com/apis/chart/

Resources