Skip to content

Commit

Permalink
docs update
Browse files Browse the repository at this point in the history
  • Loading branch information
Yunuuuu committed Jan 20, 2025
1 parent ba166c6 commit 2266209
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 72 deletions.
65 changes: 29 additions & 36 deletions README.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,8 @@ remotes::install_github("Yunuuuu/ggalign")
<th colspan="2"></th>
<th> <code>ggalign</code> </th>
<th> <code>marsilea</code> </th>
<th> <code>aplot</code> </th>
<th> <code>ComplexHeatmap</code> </th>
<th> <code>ggtree+aplot</code> </th>
</tr></thead>
<tbody>
<tr>
Expand All @@ -95,22 +95,22 @@ remotes::install_github("Yunuuuu/ggalign")
<td colspan="2"> <strong>User Interface</strong> </td>
<td>Declarative</td>
<td>Declarative</td>
<td>Declarative+Functional</td>
<td>Functional</td>
<td>Declarative</td>
</tr>
<tr>
<td colspan="2"> <strong>Plot System</strong> </td>
<td>ggplot2 (Advanced plot system built on grid system)</td>
<td>Matplotlib</td>
<td>grid</td>
<td>ggplot2 (Advanced plot system built on grid system)</td>
<td>grid</td>
</tr>
<tr>
<td colspan="2"> <strong>Focus</strong> </td>
<td>Composable Visualization</td>
<td>Composable Visualization</td>
<td>Composable Visualization</td>
<td>Heatmap</td>
<td>tree Data</td>
</tr>
<tr>
<td colspan="2"> <strong>StackLayout</strong> </td>
Expand All @@ -123,18 +123,11 @@ remotes::install_github("Yunuuuu/ggalign")
<td colspan="2"> <strong>QuadLayout</strong> </td>
<td>✅</td>
<td>✅</td>
<td>✅</td>
<td>Heatmap Only (discrete variables)</td>
<td>Cannot arrange multiple QuadLayouts</td>
</tr>
<tr>
<td colspan="2"> <strong>CircleLayout</strong> </td>
<td>Arc with angle <code>&gt;= 90</code> </td>
<td>❌</td>
<td>❌</td>
<td>✅</td>
</tr>
<tr>
<td colspan="2"> <strong>CrossLayout</strong> </td>
<td>✅</td>
<td>❌</td>
<td>❌</td>
Expand All @@ -149,60 +142,60 @@ remotes::install_github("Yunuuuu/ggalign")
<td>✅</td>
</tr>
<tr>
<td> <strong>One-to-Many</strong> </td>
<td> <strong>One-to-Many</strong>/<strong>Many-to-One</strong> </td>
<td>✅</td>
<td>❌</td>
<td>❌</td>
<td>❌</td>
</tr>
<tr>
<td> <strong>Many-to-One</strong> </td>
<td> <strong>Many-to-Many</strong> </td>
<td>✅</td>
<td>❌</td>
<td>❌</td>
<td>❌</td>
</tr>
<tr>
<td> <strong>Cross</strong> </td>
<td> <strong>Crosswise</strong> </td>
<td>✅</td>
<td>❌</td>
<td>❌</td>
<td>❌</td>
</tr>
<tr>
<td colspan="2"> <strong>Ease of Use</strong> </td>
<td>Easy for ggplot2 users</td>
<td>Easy for python user</td>
<td>Easy for for grid user</td>
<td>Easy for ggplot2 users</td>
<td> <strong>Annotate observations</strong> </td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td colspan="2"> <strong>Fully Compatible with ggplot2</strong> </td>
<td>✅</td>
<td>❌</td>
<td>✅</td>
<td>❌</td>
<td>Limited Geometric layers support in <code>CircleLayout</code></td>
</tr>
</tbody></table>
```

-------------------------------------------------------------------------------

| Specification | `ggalign` | `marsilea` | `ComplexHeatmap` | `ggtree+aplot` |
| -------------------------------------------- | ----------------------------------------------------- | ----------------- | ------------------------------------------------------------------------- | -------------------------------------------------- |
| **Data input** | Various, and can be easily extended | fixed | fixed | Various, and can be easily extended |
| **Plot Type** | Wide variety, provided by ggplot2 | Many, but limited | Many, but limited | Limited Geometric layers support in `CircleLayout` |
| **Reorder observations** ||| Heatmap Only (Cannot be used in Stack Layout) | |
| **Group observations into different panels** ||| Heatmap Only (Cannot be used in Stack Layout) | |
| **Clustering algorithm** | Kmeans,Hierarchical Clustering and arbitary algorithm || Kmeans,Hierarchical Clustering, but can provide clustering group directly | |
| **Legends Creation** | Automatic | Manual | Limited automatic, requires manual add | Automatic |
| **Legends Position** | Anywhere, can be controlled for a single plot | ? | Four sides, can only be placed on one side at a time | Anywhere |
| **Scientific Color Palettes** | Many | Limited | Limited | Many |
| **Dendrogram** | Tree from Both `hclust` or `ape` | `hclust` only | `hclust` only (Cannot be used in StackLayout) | Tree from Both `hclust` or `ape` |
| **Tanglegram** ||| | |
| **3D Heatmap** ||| | |
| **Oncoplot** ||| | |
| **UpSet plot** ||| | |
| Specification | `ggalign` | `marsilea` | `aplot` | `ComplexHeatmap` |
| -------------------------------------------- | ----------------------------------------------------- | ----------------- | ----------------------------------- | ------------------------------------------------------------------------- |
| **Data input** | Various, and can be easily extended | fixed | Various, and can be easily extended | fixed |
| **Plot Type** | Wide variety, provided by ggplot2 | Many, but limited | | Many, but limited |
| **Reorder observations** ||| | Heatmap Only (Cannot be used in Stack Layout) |
| **Group observations into different panels** ||| | Heatmap Only (Cannot be used in Stack Layout) |
| **Clustering algorithm** | Kmeans,Hierarchical Clustering and arbitary algorithm ||| Kmeans,Hierarchical Clustering, but can provide clustering group directly |
| **Legends Creation** | Automatic | Manual | Automatic | Limited automatic, requires manual add |
| **Legends Position** | Anywhere, can be controlled for a single plot | ? | Anywhere | Four sides, can only be placed on one side at a time |
| **Scientific Color Palettes** | Many | Limited | Many | Limited |
| **Dendrogram** | Tree from Both `hclust` or `ape` | `hclust` only | Tree from Both `hclust` or `ape` | `hclust` only (Cannot be used in StackLayout) |
| **Tanglegram** |||| |
| **3D Heatmap** ||| | |
| **Oncoplot** ||| | |
| **UpSet plot** ||| | |

## Acknowledgements
I would like to express my sincere gratitude to the contributors of the
Expand Down
Loading

0 comments on commit 2266209

Please sign in to comment.