How can I reproduce them if I decide to create the charts myself?
$ bitcoin-cli gettxoutsetinfo
Does it check every block in between where the UTXO first appeared and the current time to make sure it didn't get spent then?
Yes, but this check is not done for each UTXO individually as transactions come in, it is an ongoing process that specifies the current state of the network.
A bitcoin node will independently work through the entire transaction ...
EDIT: I wrote this hours ago, but apparently forgot to hit the post button. There are now a couple great answers, but I'll still post this anyways.
A has previously transferred 10BTC to B. So B has an unspent transaction output (that it can spend) referenced by the address of A.
UTXOs are not 'forwarded to an address', they exist until they are used ...
UTXO are uniquely identified by their outpoint. An outpoint consists of the id of the transaction that created the output and the position in the output list. As transaction ids are the full transaction body's hash, they are collision resistant, and as each position in the output list can occur only once, outpoints can be expected to be unique.
E.g. the ...
A first thing to correct is that UTXOs are not referenced by address, but by the txid that created them. The addresses are purely a human abstraction about locking conditions to help think about ownership.
So in your example what happens is that in the initial transaction tx0 created by A, B was credited with 10 BTC. Assume that transaction only had one ...