Fair Warning: this post is about 4.1 years old, so some of the information might be a bit dated. On the other hand, this post was last modified about 4.1 years ago, so maybe it's up-to-date after all. In any case, please keep all this in mind while reading. Thanks for understanding!
A Quick Diversion:  

The Actual News:

Okey dokey! It didn’t take me too long to finagle some code together, but this is the first iteration (of many to come) of the “Pokémon GO Stat Calculator Utility”! Check it out below, it’s ready to go! (Hey, I’m a poet and wasn’t aware!)

So how does it work? Simple! All you need to do is click on “Appraise” on the Pokémon you want to calculate, input the graphs you see for the three stats—Attack, Defense and HP—that are given to you, and click “Generate”.

So just click on “Appraise”…
…and input these three graphs into the utility. The utility has representations of these graphs for ease of selection.
To help you figure out which one to select, consult this handy guide.

After that, a five character word will appear next to “STAT NAME” which is the stat value for that Pokémon. In the case of the example Appraisal above, inputting those stat values into the utility will generate the name “714FD”:

The idea here is to rename that Pokémon to that five character word, as that will then allow you to organize your Pokémon in such a way that all the best ones are on one end of the “Name” list, while the worst ones are on the other.

You can get an idea of how that would look below:

When you list your Pokémon by “Name”…
…you can see all of your Pokémon ordered by their quality, where the bottom is where all your best Pokémon are, while the top has… all the ones which are just as great but maybe not as great in battle.
As long as their names start with the generated 5-character phrase, you can also see which ones have better individual stats, like how the “CP 42” Bulbasaur has better Defense (A/10) than the “CP 15” Bulbasuar (8), even though it’s overall stat value is significantly less (42 vs 78).

So hopefully you can see how this system helps you make good decisions when organizing your Pokémon, such as if you’re trying to find strong attacking Pokémon to attack a Gym with, or maybe strong defending Pokémon to defend one instead.

As a reminder of how the five-character name is broken down; it is written in the format of XXADH. Specifically, this means:

  • XX — this is a two digit number which is the overall quality of that Pokémon. This number however can be one of two types:
    • Exact (0-45): If you add the value of all three stats, which themselves are a number between 0 and 15, you’ll have a number between 0 and 45, such that 45 is the absolute best Pokémon, 22 or 23 is about average, and 0 is the absolute worst.
    • Percentage (0-100%, default): This is simply the percentage of the Exact number out of 45. For example, if the three stats add up to 29, then the XX number generated would be 64, since 29/45 is 64.44%.
    • You can choose to generate values according to either its Exact total stat value or as a percentage in the pulldown menu next to “Generate”.
  • A — the Attack stat for that Pokémon, represented by a hexadecimal number between 0 and F (which is equal to 0 and 15); 0 is the worst stat, 8 is about average, and F is the best, which represents 15
  • D — the Defense stat for that Pokémon, also in hexadecimal
  • H — the HP stat for that Pokémon, also in hexadecimal

Anyways, I hope this utility is helpful for you! And please keep an eye out for updates, because I plan on making some extra changes in the future, such as adding a way to calculate multiple stats at the same time, or helping to see which Pokémon out of a list of them are ones worth keeping over others, etc etc. Good times!