Giter VIP home page Giter VIP logo

Comments (11)

aindlq avatar aindlq commented on May 18, 2024 4

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.

Does666 avatar Does666 commented on May 18, 2024 1

@aindlq

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.

ugurdogrusoz avatar ugurdogrusoz commented on May 18, 2024

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.

superbobry avatar superbobry commented on May 18, 2024

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.

superbobry avatar superbobry commented on May 18, 2024

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.

aindlq avatar aindlq commented on May 18, 2024

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.

superbobry avatar superbobry commented on May 18, 2024

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.

pmackay avatar pmackay commented on May 18, 2024

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.

ugurdogrusoz avatar ugurdogrusoz commented on May 18, 2024

Unfortunately we don't have resources for this at the moment.

from cytoscape.js-expand-collapse.

paanday avatar paanday commented on May 18, 2024

How to initialize qtip on new meta-edges after collapse or expand? can you provide the code

from cytoscape.js-expand-collapse.

ephraimrothschild avatar ephraimrothschild commented on May 18, 2024

Is there any progress on this?

from cytoscape.js-expand-collapse.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.