It does look a bit cheesy. Well, let's see what we can do, then!
Personally, I think you may be better off using Symbology for this sort of thing. I'm using static values to test this, but you could easily make these attribute-driven by enabling the setting "Allow symbol property connections":
In my symbology, I have a series of marker layers. I'm going to set them each to a text symbol:
You should be able to pipe in a text string from your data:
I should mention at this point that I don't know how your data is organized. Are these values coming from different fields? I'm assuming they are.
At this point, I've got three text symbols corresponding to 6.0, 3.2, and 1.4:
Not quite there. Now I'll give them each a value for Offset Y.
Now for the lines. I'll add new marker symbols and set them to the "line" symbol:
Now I'll set each of them to a 90 degree rotation, then tweak their size, line width, and Offset Y.
Looks great!
...Except that this is another symbol. So to keep the points, I'll need to apply this sort of symbology to a duplicate layer in my contents. And to get them in the right position, I'll need to adjust the Offset X (or whatever you prefer) to get them off to the side from the point symbol itself.
That's looking like what we want.
Caveat
This method uses offsets and marker symbols that are specifically place for the given fraction style. In order to correctly apply this method to different fractions (2 or 4 "levels"), you'd need to use classified symbology, and somehow use an expression to split your points into 2-layer, 3-layer, and 4-layer fractions. I'm sure this is possible using a simple Arcade expression.
It's a lot of clicking and tweaking to get this set up, but the end result is a much nicer-looking label. I've attached a zipped .stylx file to get you started, if you like this method.
- Josh Carlson
Kendall County GIS