I think I’ll spend this week explaining exactly what the 1-dimensional PH features project is about. Now that I have a much better grasp on how the 0-dimensional project works (it only took me nearly an entire year..) I feel I know a bit more about the 1-d project! When I first approached Dr. Rosen about working together in his lab, the idea was to get started on the 1-dimensional project first. We quickly learned there was still a lot to do and flesh out for the 0-dimensional project. As far as we knew, there was no technique/software to detect the 1-dimensional PH features of a graph interactively. Since then, there has been a paper published to detect cycles, however,[…]

These posts are coming a bit late, but I blame how hectic graduating is. Since these are being written in the future, I will try my best to recount what happened in my last few weeks of undergrad. During this time, Dr. Rosen and I sat down and talked what should be next. I’ve officially decided to attend Tufts University to work with Remco Chang, and I’m so excited! Remco, Kristi, and Dr. Rosen are all familiar with each other (and collaborated together on various things), so it should be an easy transition for me through the summer. I’ll be working with Kristi on her work in uncertainty visualization, and hopefully I can finish the new projects I’m working on[…]

So we decided to resubmit our 0-dimensional PH FDL paper to Vis ’18. One of the biggest critiques our reviewers had from EuroVis was that we didn’t test enough datasets (mainly, larger ones). This week we’ve been focusing on finding large datasets and synthetically generated artificial ones, as well. Mustafa kindly generated about 20 of them (wow!) for us so I’ve been testing them and seeing what kind of layouts and structures our tool produces. So far, the results have been great! We’re going to continue focusing on expanding our results section to hopefully have something more compelling to show to the reviewers this round.

I’ve been working on the code to finish using persistent homology and random walks to find cycles in a graph. Each node will have a probability of being on a cycle and I’ll use this to supplement the graph drawing later on. So far this past week I’ve implemented the algorithm and visualized the process. I also found out this week I was admitted to the University of British Columbia as a PhD track with Tamara Munzner’s group! I’m so excited! Hopefully I’ll still be able to make the Vis 2018 deadline on March 31st with upcoming grad visits. Thanks for checking out my blog 🙂

This week begins my last semester at USF (and last semester researching for CREU). I’ve already met with Dr. Rosen three times to get the ball rolling on our next project. We’re adding on to our software of 0-D graph drawing tools by creating a tool for 1-Dimensional features. So far this month I’ve coded two graphs, one that takes in a point cloud with (x,y) coordinates, a persistence value, and birth/death cycle associated with every event. The second graph will be a replica of this first graph, but now I will randomly choose a starting point and perform a random walk on the graph (using a distance matrix against a randomly assigned epsilon value) to see if I can[…]

Just finished submitting my mid-term report for CREU. This past semester has been a great learning experience and working with Dr. Rosen ha s been — brace yourselves I’m about to be dramatic .. life-changing! Sometimes I can’t believe how prepared I feel for graduate school thanks to that guy! This semester I’m closing out with 3 A’s and 1 B. It’s not my best semester and I was hoping to finish my senior year with all A’s but unfortunately I was too busy to focus on my schoolwork 100%. That being said, I’ve finished all the coding for our project and we’re putting the final touches on our paper. I sat with Dr. Rosen in his office for nearly[…]

This week we decided to add a slider feature to our UI. This will better display a feature we had already implemented: collapsing low persistence nodes. The slider will correspond to the graph on the right side of the featured image. Here is a better picture: Points above the line are points that aren’t simplified and points below are those that get simplified, based on persistence. This line will be represented by our slider, and all bars to the left of the slider will collapse corresponding nodes. I already have half the slider implemented, but the full functionality I’ll hopefully have done by next week. Here is what it looks like so far, with updated barcode: Right now nothing is[…]

This week we fixed the barcode not being displayed properly. I ended up having to clean up the code inside processing quite a bit and moving most of it to our backend project on eclipse. Dr. Rosen likes to tell me that this is what good software engineering is, which I certainly see his point after all the adjustments I’ve had to make this semester. Before we fixed the barcode, the persistence/weight of the barcode was not being displayed properly (affecting the width of the barcode by making lower persistence/weighted bars the same width as other, higher persistence/weighted bars). Now our barcode is sorted two ways: first by persistence/weight, then secondly (if the persistence is equal for two bars) by[…]

I thought I’d be done with coding by now, but there are still a few features left we’re trying to squeeze in. I finally got the bubble color sets working for when we’re hovering over the barcode. The nodes are separated into a set (shown in the feature image) based on how the graph will split if that particular bar is selected on the barcode. This allows us to have a peek of what feature we’d like to click on just by hovering! We also added hyperbolic zoom to the barcode so you can easily scroll through the barcode. We had to add this because for larger datasets (300+ nodes) it was pretty impossible to differentiate between individual bars. The[…]

This week I worked on adding pictures to our paper for our case studies/results section. I added some new datasets to test, but I’m currently working on categorizing it so we can group them based on an ID (for example: we have a football dataset that I can categorize based on region/country). I’ve been working on implementing the bubble color sets when a user is hovering over the barcode and sorting the persistence diagram by ratio. These features have been a lot harder than I anticipated, but they should be complete before the paper deadline! I don’t remember the last time I’ve been so busy. The only comparable time is Spring 2016 when I was taking Physics 2, Programming Concepts,[…]