Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Frank Hellmann
    @FHell
    The stuff we first tried to get weights to work is documented in what_works.jl (we've now settled on just using a sparse matrix instead).
    The things that are not documented to be part of the interface are in the main /src/EmbeddedGraphs.jl file.
    BridgingBot
    @GitterIRCbot
    [slack] <oxinabox> What special algorithms exist for Minimum Perfect Matching, for Bipartite Graphs
    [slack] <oxinabox> Perhaps @Tushar Sinha might know, since it relates to the JSOC you just posted
    BridgingBot
    @GitterIRCbot
    [slack] <simonschoelly> isn't that the hungarian algorithm?
    [slack] <simonschoelly> ah no, that seems to be for maximum perfect matching
    [slack] <simonschoelly> https://en.wikipedia.org/wiki/Assignment_problem might have some info
    BridgingBot
    @GitterIRCbot
    This message was deleted
    [slack] <oxinabox> Excellent thanks
    This message was deleted
    This message was deleted
    BridgingBot
    @GitterIRCbot
    [slack] <matbesancon> Min-cost matching is equivalent to a min-cost flow on the bi-partite graph + one source + one sink, so formulating as a linear opt problem works, not the most efficient but is nice to highlight polynomial time
    Guillaume Larocque
    @glaroc
    Hi, I've been struggling to find a way to import an existing graph with vertex and edge attributes into LightGraphs or MetaGraphs. Can anyone point me to some documentation?
    BridgingBot
    @GitterIRCbot
    [slack] <sbromberger> you'll lose attributes if you import into SimpleGraph.
    [slack] <sbromberger> MetaGraphs supports DOT format AFAIR.
    Guillaume Larocque
    @glaroc
    @GitterIRCbot Thanks, although GraphIO doesn't seem to keep the attributes when importing graphs. So, how you one import graphs with attributes into Metagraphs? I guess the only way is to import the edges and vertices as CSVs and build the graph from scratch?
    BridgingBot
    @GitterIRCbot
    [slack] <sbromberger> that's probably the best we can do for now, but you might check MetaGraphs.jl to see whether @jpfairbanks' DOT code was merged.
    BridgingBot
    @GitterIRCbot
    [slack] <jpfairbanks> So the Dot format is write only. You could implement a dot reader although it would be quite time consuming because of the flexibility inherent in the dot format
    [slack] <sbromberger> ah, I didn't know that.
    [slack] <jpfairbanks> I would recommend storing graphs with metadata in a tabular format like CSV, juliadb, SQLite etc. and then using queries to build the graph when you need it.
    [slack] <jpfairbanks> There is no standardized graph+metadata format that I would trust for archival data storage at this point.
    Guillaume Larocque
    @glaroc
    @jpfairbanks Thanks for the info. I tried the GML format which looks quite straightforward for storing attributes. Anyways, I'll build the graph from the basic SimpleGraph functions.
    Sebastian Micluța-Câmpeanu
    @SebastianM-C
    @glaroc Regarding the metadata storage, I am developing a package for data storage in graphs ( https://github.com/SebastianM-C/StorageGraphs.jl ). For storing on disk I use serialization, but this is not something well suited for archival purposes, since it's dependent on the julia version. For small graphs BSON.jl may be an option, but it is limited to files up to ~4GB (I think that you may be able to fit a few million vertices&edges, but it gets really slow after a few hundred thousands).
    BridgingBot
    @GitterIRCbot
    [slack] <miguelraz> Hey gang!
    If I have a map of city roads in a picture, is there an easy way to load it as a graph?
    I thought point and click in another app and then importing to Julia might be feasible.
    BridgingBot
    @GitterIRCbot
    [slack] <sbromberger> that doesn't sound like something that's currently supported by any package I know of
    BridgingBot
    @GitterIRCbot
    [slack] <miguelraz> #GSoC2020
    BridgingBot
    @GitterIRCbot
    [slack] <matbesancon> Looks mostly like an image processing task, the graph-related part is just loading
    BridgingBot
    @GitterIRCbot
    [slack] <miguelraz> I found theres a Gephi online site called rollApp that does it. Thanks!
    ayushpatnaikgit
    @ayushpatnaikgit

    Hi everyone!

    I am using LightGraphs for a project. I have a distance matrix and I want to find the minimum spanning tree. I am running the following code:

    using LightGraphs
    T = CSV.File("samples/distance_matrix.csv")
    df = DataFrame(T)
    df = df[:,2:end] #because the first column has names (same as the top row)
    m = Matrix(df)
    sg = SimpleGraph(m)
    mst = kruskal_mst(sg) ## or prim_mst(sg)

    The MST that I get is incorrect. However, when I write my own kruskal functions, I get the correct the MST.
    Can some tell me if I doing something wrong?

    Thanks!

    BridgingBot
    @GitterIRCbot
    [slack] <oxinabox> @shashikdm has a PR open to support visualisation of LightGraph graphs in TensorBoard wth TensorBoardLogger.jl
    PhilipVinc/TensorBoardLogger.jl#32
    [slack] <oxinabox> Someone who knows LightGraphs should check it out.
    BridgingBot
    @GitterIRCbot
    [slack] <simonschoelly> Interesting
    [slack] <simonschoelly> I have haven't looked at tensorboard in quite some while
    [slack] <simonschoelly> Will tensorboard take care of creating a layout of the graph, or do you have to do that in TensorBoardLogger?
    BridgingBot
    @GitterIRCbot
    [slack] <oxinabox> TensorBoard will do the layout AFAIK
    BridgingBot
    @GitterIRCbot
    [slack] <sbromberger> that's pretty cool
    BridgingBot
    @GitterIRCbot
    [slack] <oxinabox> I suspect for large graphs it is pretty absymal.
    IT doesn’t do great at visualizing large tensorflow models as graphs — and that is its branded purpose.
    [slack] <oxinabox> OTOH I wouldn’t be surprised if actually that is because large tensorflow models are super line-like.
    BridgingBot
    @GitterIRCbot
    [slack] <simonschoelly> automatic creation of good graph layouts seems to be something very complicated
    BridgingBot
    @GitterIRCbot
    [slack] <oxinabox> It is NP-hard
    [slack] <oxinabox> And also hard to define
    BridgingBot
    @GitterIRCbot
    [slack] <shashikdm> tensorboard creates subgraphs based solely on their names. e.g. nodes with name "Dense/W" and "Dense/b" will be plotted as a subgraph named "Dense" containing "W" and "b" which can be collapsed/expanded. so large graphs can be named accordingly for better visualization.
    BridgingBot
    @GitterIRCbot
    [slack] <jpfairbanks> This is the real hard part. We had an expression in my grad school lab for problems like this. NP impossible: when it’s NP hard to get n researchers to agree on a precise definition of the problem.
    [slack] <jpfairbanks> Graph layout and graph clustering are in this complexity class.
    Harsha Nagarajan
    @harshangrjn
    A quick question, which was probably answered before. Does LightGraphs.jl enumerate all the cycles on an undirected graph or is the enumeration only on directed graphs?
    Mathieu Le Provost
    @mleprovost
    Hello, quick question, is the modularity maximization algorithm implemented in LightGraphs.jl ?
    BridgingBot
    @GitterIRCbot
    [slack] <sbromberger> Doesn’t sound familiar.
    [slack] <jpfairbanks> modularity maximization is not in the docs, but would be a good PR.