2023-06-23: Slow week
Tags: devjournal
Published: 2023-06-24 01:01:21

I don't have much exciting stuff to report this week. Monday I was out since my fiancée was over, so it was a short week again.

For the game, I haven't had enough time lately to just sink my teeth in to Unreal and figure out its complexities. The week started off with me setting up a remote desktop to another Windows machine. I usually work on Mac, which is obviously not ideal, so this was a must. Still working out the kinks.

We are using AirSim (now called Colosseum) for our AI since we want the game to be as realistic as possible, so plugging that into Unreal will be a game-changer (literally). However, we've been running into constant technical difficulties associating with getting it running. I think my other colleague ended finally getting it to work by investigating the Colosseum Slack, since it wasn't working for UE5.2 on his end. I couldn't get the plugin to build on this Windows machine that I just received, but it's going to be slow work. We have a big vision for what we want to do.

I finally got an e-introduction to my two new fellow software developers, and we're going to be starting up collaborative work along with twice-weekly standup meetings.

I'm still doing exploratory data analysis based off our Salesforce information, and I've made some pretty complex graphs, including an advertising piechart to see where our best sources advertisements lie. Here is a screenshot of the piechart itself (the legend is not included for security purposes):

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcedxe1aup4x6yhc1f2p.png)


Getting those colors to function as I wanted was a real piece of work. I've been tending to use ChatGPT for most of this data analysis and it's been doing a pretty good job of giving me a place to start, but getting the colors to work for this thing was a trip, to say the least.

I first set out to make some sort of pre-processing for the strings so that it would come out well. I noticed all of these strings started with the general source (word of mouth, website, billboards, etc.) followed by the region so I wanted to group those general categories together. I cleaned up any mismatching hyphens or dashes, re-adjusted the capitalization, and added spacing in the hyphens for the legend. Then I split by the hyphen and managed match all the subcategories to the general categories through sorting and such. 

The colormap, as mentioned, was the hardest part. I had to make sure each of the general categories had a unique color, so I set it to use the `tab10` colormap included with Matplotlib, and then I took those and used them as the base for the outer ring's colors. Matplotlib apparently has a cool built-in package called LinearSegmentedColormap which simply let me put in a gradient start and end value, and that made it map pretty easily to the specific subcategories. However, since I was using ChatGPT, it took me a while for it to recommend the approach I eventually came to.

Regardless, pretty happy with the result.

I had a similar experience with plotting a number of accidents vs. time graph, where I wanted to make it so the x axis was equally-spaced with the 52-week values for each year, but Matplotlib kept the spacing equal between each point, which did not align at all with the 12-month labels that I wanted it to have. Eventually I came to a solution where I had to do some weird reindexing approach based off some date ranges, but it ended up finally working. I also wanted to see growth per year so I made sure that across the four graphs, the y value max was consistent.

This set of charts, I unfortunately cannot share because it is sensitive information, but it is very aesthetically pleasing and pretty elucidating as to some trends.

I hope to share more of my development challenges next week with you all. However, I will be traveling overseas from July 1-10 so I'll probably take a hiatus during that period.

Cheers!