- Notifications
You must be signed in to change notification settings - Fork0
Ipelet for IPE that draws linear embeddings of graphs
License
lluisalemanypuig/ipe.embedviz
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
IPE is an extensible drawing editor software specially targeted at making figures for inclusion into LaTeX documents, as well as multi-page PDF presentations. This repository contains a small extension of IPE, a so-calledipelet. The ipelet in this repository aims at provinding an automatic tool for drawinglinear arrangements of graphs, also called embeddings.
This ipelet is a tool aimed at easing the process of drawing and manually editing linear arrangements of graphs. It can draw a graph from ahead vector
input and also from anedge list
. Vertices can be mapped to positions indicated by their indices, or indicated by an arrangement function and/or an inverse arrangement function. Users can also label the vertices using math-text, and calculate metrics on the linear arrangement.
Users will find a complete guide atthis ipelet's wiki. Here is a screenshot of the main dialog:
and a few examples of what it can do:
Copy all the.lua
files into your ipelet directory. In Ubuntu, this is~/.ipe/ipelets/
. Visit the home webpage of IPE for more information.
- Updated wiki
- Implemented drawing of bipartite embeddings.
- Minor adjustments in (vertical and horizontal) spacing between embeddings.
- Merged the two ipelets made on July 23rd, 2021 into a single one. This way it is easier to input the data.
- Added new ipelete to visualize arrangements in a circular ordering.
- Refactored much of the code so as to avoid repetition.
- Added option to bicolor the vertices of the graph. The algorithm will successfully bicolor the vertices following the constraints of the graph coloring problem if the graph is bipartite.
- Place position labels in the same vertical line as the vertices.
- Added calculation of the number of edge crossings.
- When using the head vector, add the arcs to the ipe document in a way that the 'forward' arrow points from the head to the dependent. In other words, edges now follow the natural direction of the edge(u,v), i.e., fromu tov, whereu is the head andv is the dependent.
- Improved automatic spacing, and corrected spacing when not using automatic spacing.
- Vertex labels now have to be separated with a '&' (the delimiter) character. Therefore, the string "a & b & c & d" produces the strings "a ", " b ", " c " and " d".
- Implemented a better automatic spacing that takes into account all the dimensions of a text object, namely, its height, width and depth.Only available on IPE 7.2.24 or newer.
- Implemented a first approach to a better vertical alignment of the arrangements. Waiting for the next release of IPE to be able to retrieve the height and depth of a text object.
- Added more slots in the dialog for arrangements. Now users can draw up to 4 arrangements for the same graph without having to open the ipelet as many times as arrangements they want to draw.
- Moved usage guide from this README to the brand new wiki forthis ipelet.
Renamed 'linear sequence' by 'head vector' and added new features:
- indicate vertex labels in a separate input text box. This works even for head vectors.
- modify the arrangement of a head vector by specifying a linear arrangement or an inverse linear arrangement.
- Split the main file
embedding_visualizer.lua
into several files, each starting withev_
.
- Extended the Ipelet to apply an automatic spacing between the labels of the vertices.
- Updated the examples and added new ones.
- Extended Ipelet to admit linear sequences.
- Uploaded new examples (of the new feature) and updated old examples.
- Code is now substantially better documented.
- The objects created (marks, arcs, labels, ...) are selected to ease future manipulations when several arrangements are to be added to the document.
- Display markers as the vertices of the graph.
- Extended the format of input strings.
- Extended the ipelet to admit two diferent representations of a linear arrangement. The actual linear arrangement and the inverse linear arrangement (the so far so-called sequence).
- Fixed bugs (in the first extension).
- Allow users to choose the x offset.
- In case the arrangement was given (not the inverse), add the labels of the positions at the below the vertices.
- Extended the ipelet to accept string and character values for the description of the graph and the embedding.
- Change label's text to say "Sequence" instead of "Embedding".
- Created repository with first version of the ipelet.
About
Ipelet for IPE that draws linear embeddings of graphs
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.