Thank you, Benjamin!

I was wondering if Graphs had something like function "graph.adjacency" in
Igraph library (
http://www.inside-r.org/packages/cran/igraph/docs/graph.adjacency). But
your suggestion is very good for what I am doing. Thank you, indeed!!

Best regards,

Charles


On Sun, Jul 6, 2014 at 3:21 PM, Benjamin Lind <[email protected]>
wrote:

> There are a few ways to do it. I prefer to make arrays of the vertices and
> then the edges and enter them into the graph function. For example:
>
> mat=rand(4,4)
>
> nnodes = size(mat, 1)
> nedges = nnodes * (nnodes - 1)
> vlist = Array(KeyVertex{Int64}, nnodes)
> for i = 1:nnodes
>     vlist[i] = KeyVertex(i, i)
> end
> ecounter = 1
> elist = Array(ExEdge{typeof(vlist[1])}, nedges)
> for i = 1:nnodes
>     for j = 1:nnodes
>         if i != j
>             elist[ecounter] = ExEdge(ecounter, vlist[i], vlist[j])
>             elist[ecounter].attributes["distance"] = mat[i, j]
>             ecounter += 1
>         end
>     end
> end
>
> g = graph(vlist, elist, is_directed = true)
>
> On Sunday, July 6, 2014 12:09:50 PM UTC+4, Charles Santana wrote:
>
>> Just to complete the information. I am using Julia Version
>> 0.3.0-prerelease+3841 (2014-06-22 11:24 UTC)
>>
>> Charles
>>
>>
>> On Sun, Jul 6, 2014 at 1:32 AM, Charles Novaes de Santana <
>> [email protected]> wrote:
>>
>>> Dear all,
>>>
>>> I am starting to use Graphs.jl and some simple questions arrived. It is
>>> not clear for me how to create a Graph from my data if my data is in a
>>> matrix format, for example.
>>>
>>> The documentation is plenty of information about how the classes, types,
>>> and algorithms are defined, and they also provide some good examples to use
>>> these functions once you have a graph object. But I couldn't find a clear
>>> example about how to create a graph from my data. Let's suppose my data is
>>> the matrix 'mat' (representing the distances between each pair of nodes in
>>> my graph), as defined below:
>>>
>>> julia> mat=rand(4,4);
>>>
>>> julia> for i in 1:4
>>>         mat[i,i]=0;
>>>         end
>>>
>>> julia> mat
>>> 4x4 Array{Float64,2}:
>>>  0.0       0.310287  0.497059  0.0472071
>>>  0.624904  0.0       0.256988  0.675347
>>>  0.305605  0.504063  0.0       0.915409
>>>  0.85426   0.145528  0.055314  0.0
>>>
>>> Please forgive me if this information has been asked before and I didn't
>>> find the correct reference. I would much appreciate any help.
>>>
>>> Best wishes,
>>>
>>> Charles
>>>
>>> --
>>> Um axé! :)
>>>
>>> --
>>> Charles Novaes de Santana, PhD
>>> http://www.imedea.uib-csic.es/~charles
>>>
>>
>>
>>
>> --
>> Um axé! :)
>>
>> --
>> Charles Novaes de Santana, PhD
>> http://www.imedea.uib-csic.es/~charles
>>
>


-- 
Um axé! :)

--
Charles Novaes de Santana, PhD
http://www.imedea.uib-csic.es/~charles

Reply via email to