Suppose you have a list of vertices `V`

(#V by dim) and a list of edges `E`

(#E by 2) indexing `V`

, then one hacky to draw all of these edges with ** per-vertex** color data

`DV`

(#V by 1) is to use `trisurf`

:```
trisurf(E(:,[1 1 2]),V(:,1),V(:,2),V(:,3),'CData',DV,'EdgeColor','interp');
```

However, if you try to use this trick to draw ** per-edge** color data

`DE`

(#E by 1), you’ll find that `'EdgeColor','flat'`

does not work. Instead you can explode you compact “mesh” of edges into individual edges and repeat you edge color data for each edge point:```
trisurf(reshape([1:size(E,1),1:size(E,1)*2],[],3),V(E(:),1),V(E(:),2),V(E(:),3),'CData',repmat(DE,2,1),'EdgeColor','interp');
```