Comments (11)
As a workaround you can play around with meta edge styling. E.g
{
'selector': 'edge.meta',
'style': {
'curve-style': 'unbundled-bezier',
'control-point-distances': '0 0 0',
},
},
This way, at least visually edges will be collapsed into one.
from cytoscape.js-expand-collapse.
As a workaround you can play around with meta edge styling. E.g
{ 'selector': 'edge.meta', 'style': { 'curve-style': 'unbundled-bezier', 'control-point-distances': '0 0 0', }, },
This way, at least visually edges will be collapsed into one.
Why only set curve-style
to unbundled-bezier
work ? I set it to bezier
and this workaround not works. But I think unbundled-bezier
looks ugly.
from cytoscape.js-expand-collapse.
When compound nodes are collapsed, we create one meta edge per inter-graph edge coming out of / going into the collapsed compound. In case there are multiple such edges, we end up with multiple meta edges (multiple meta edges with the same source and target). We could implement an option named collapseMetaEdges to not generate more than one meta edge when true. Notice that this applies to situations where only one end is a meta node.
from cytoscape.js-expand-collapse.
Thank you for a quick reply! I like the idea of having an extra option and I'm fine with it applying in the case where there is a single meta node.
from cytoscape.js-expand-collapse.
Thanks, @aindlq, I'll give that a try!
On a slightly unrelated note: the fact that edges are replaced by meta edges seems to somehow break the qtip plugin. I.e. the following does NOT result in tooltips for meta edges:
cy.edges().qtip({
content: function() { return "foobar"; },
position: {my: "top center", at: "bottom center"},
style: {classes: "qtip-bootstrap"},
show: {event: "mouseover"},
hide: {event: "mouseout"}
});
Is this a known issue?
from cytoscape.js-expand-collapse.
Are you doing this when you already have "meta" edges in cy.edges() or in the beginning when all nodes are expanded? If later is the case, you need to make sure that you initialize qtip on these new meta edges as well.
from cytoscape.js-expand-collapse.
If later is the case, you need to make sure that you initialize qtip on these new meta edges as well.
This was indeed the case. Thank you!
from cytoscape.js-expand-collapse.
We could implement an option named collapseMetaEdges to not generate more than one meta edge when true.
@ugurdogrusoz may I ask if support for this option has progressed at all?
from cytoscape.js-expand-collapse.
Unfortunately we don't have resources for this at the moment.
from cytoscape.js-expand-collapse.
How to initialize qtip on new meta-edges after collapse or expand? can you provide the code
from cytoscape.js-expand-collapse.
Is there any progress on this?
from cytoscape.js-expand-collapse.
Related Issues (20)
- Expanding compound node dis-aligns the rest of the graph HOT 1
- Option to Display number of collapsed nodes on collapsed groups HOT 4
- Option to not remove collapsed nodes HOT 4
- Demo on load clustering improvement HOT 2
- Expanding all the collapsed nodes causes a bad layout HOT 2
- Losing edges bug HOT 1
- flex layout not respected HOT 3
- Collapsed children are not in graph HOT 4
- Recursive Expand Parents HOT 2
- Exception - Expanding Collapsed Edges of a Collapsed Child HOT 9
- Undefined variable in 'expandCollapseUtilities.js' HOT 1
- Please Provide a @types/cytoscape-expand-collapse file to enable use in typescript projects HOT 1
- Ordering of children is not preserved HOT 1
- Adding new data to collapsed workspace HOT 7
- Getting collapsed edge containing certain edge HOT 6
- expand(nodes, option) does not respect the passed options
- Example for a layout function HOT 1
- Update saveJSON to return serialized data HOT 8
- Collapsing a compound with label-sized nodes and parallel bezier edges crashes cytoscape
- CollapsedChildren method on event's target object returns null even though elements are present inside
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cytoscape.js-expand-collapse.