|
55 | 55 | newitem=mat2jd(item,varargin{:}); |
56 | 56 | elseif(isa(item,'table')) |
57 | 57 | newitem=table2jd(item,varargin{:}); |
58 | | -elseif(isa(item,'digraph')) |
| 58 | +elseif(isa(item,'digraph') || isa(item,'graph')) |
59 | 59 | newitem=graph2jd(item,varargin{:}); |
60 | 60 | else |
61 | 61 | newitem=any2jd(item,varargin{:}); |
|
164 | 164 | function newitem=graph2jd(item,varargin) |
165 | 165 | newitem=struct; |
166 | 166 | nodedata=table2struct(item.Nodes); |
167 | | -if(any(ismember(G.Edges.Properties.VariableNames,'Name'))) |
| 167 | +if(isfield(nodedata,'Name')) |
168 | 168 | nodedata=rmfield(nodedata,'Name'); |
169 | | - newitem(N_('_GraphNodes_'))=containers.Map(item.Nodes.Name,num2cell(nodedata),'uniformValues',false); |
| 169 | + newitem.(N_('_GraphNodes_'))=containers.Map(item.Nodes.Name,num2cell(nodedata),'uniformValues',false); |
170 | 170 | else |
171 | | - newitem(N_('_GraphNodes_'))=containers.Map(1:max(item.Edges.EndNodes(:)),num2cell(nodedata),'uniformValues',false); |
| 171 | + newitem.(N_('_GraphNodes_'))=containers.Map(1:max(item.Edges.EndNodes(:)),num2cell(nodedata),'uniformValues',false); |
172 | 172 | end |
173 | | -newitem(N_('_GraphEdges_'))=num2cell(table2cell(item.Edges),2); |
| 173 | +edgenodes=item.Edges.EndNodes; |
| 174 | +edgedata=table2struct(item.Edges); |
| 175 | +if(isfield(edgedata,'EndNodes')) |
| 176 | + edgedata=rmfield(edgedata,'EndNodes'); |
| 177 | +end |
| 178 | +edgenodes(:,3)=num2cell(edgedata); |
| 179 | +newitem.(N_('_GraphEdges_'))=edgenodes; |
174 | 180 |
|
175 | 181 | %%------------------------------------------------------------------------- |
176 | 182 | function newname=N_(name,varargin) |
|
0 commit comments