there wont be 21mill. as the topic creators images show only 20,999,999.9769
Recently, Bitcoin number 19,000,000 was mined and it's a huge milestone for Bitcoin.
Only 2M
BTC are left until all 21,000,000
BTC will be mined, which will happen in 2140.
..
Of course, Miners will be rewarded by transaction fees by then.
But it's impressive to see how mining rewards will decrease.

making the date from the 20,999,998 to 20,999,999 being the 'last whole bitcoin'
dates of after 2096-before2104 (under 8 years to make a final whole bitcoin)
so we only have 74 years not 116 years until the last WHOLE bitcoin
..
we also have the average TX fee combined per block of 0.07btc
(10btc/144 blocks(a day))by which if fee's remain at this same level. then the reward will be equal in about 2045 (23 years time)
in the next 23-76 years, fee's will be the significant income.
so before 2045 we should not be trying now to make bitcoin more expensive to "compensate miners" due to their reward decreases now.. instead we should be making bitcoin cheap fee for people to use bitcoin more. and enjoy bitcoin more to gain more adoption of THE BITCOIN NETWORK(not side projects/networks pretending to be bitcoin but dont involve mining)
NOW we should be increasing the amount of transaction capacity on THE BITCOIN NETWORK(not on side networks that have no mining)
so that more can use and enjoy bitcoin now, and so that the fee's can be spread even further across more users, thus keeping fee's reasonable individually,. so that as things grow later. the fee's stay low individually but amass collectively per block to afford miners a good bonus/income from