Counting results from a survey and assigning a new role

Hi fellow Bubblers!

I created a survey to help identify the creative expressions of people signing up for my app. I am going to use the creative expression to match each user with a coach. Below is a screenshot of the first question in the survey for reference.

I created an Option Set for the Creative Expressions. Please see screenshot below.

I thought it would be best to treat the Creative Expression similar to a ‘user role’, saving the CreativeExpression to the User data type->CreativeExpression(OS). I set this up in my database as shown below.

However, I am having a hard time creating a workflow that counts the user’s survey answers, sorts them based on creative expression from highest to lowest, takes the first one (which would be the creative expression with the highest count) and then assigns that creative expression as a role to the user.

I was able to have the user’s answers counted based on they creative expression each answer selection represents.

However, I can’t seem to do the next part, which is assign the role to the user as the creative expression with the highest count. I don’t know what workflow to set up to make that happen. Would it be a backend workflow?

This is what I want to show the user once I’m able to assign the CreativeExpression. In the example below, ‘Artisan’ is the CreativeExpression(OS) of the current user. The headline and key traits are dynamically showing based on that option set.

Bonus points: Help me figure out how to make a pie chart using their creative expressions, where each slice is proportionate to the count of the creative expressions they selected. Basically, using the data below to create the pie chart. Ideally, the slices are organized from largest to smallest and maybe even slices with ‘0’ are left out.

By the way, here are some screenshots from the database showing relevant data types and setup. I made it a little harder on myself too by allowing users to select two answers per question, which translates to two creative expressions lol.

Thank you much! I’ve been trying for 2+ days to get the survey results to display how I would like them to. I sooo appreciate any and all help!