Let explain how I do this
I will take the "Pizza Block" to illustrate.
On 2010, may the 22nd, a bitcoin developper (Laszlo Hanyecz) bought a pizza with 10 000 BTC.
This is widely recognised as the first real-world transaction with bitcoin.
As the Blockchain is public, we can find the block that contains this transaction.
I call it the "Pizza block", it is at height 57035.
It contains 2 transactions, the pizza and the reward for the mining.
You can explore the block here.
Fisrt, I draw a line for each transaction.
The heigth of a line depends of the amount of the transaction.
So, in the Pizza block, we have a line at 50 and a line at 10 000.
It will be more beautiful with a gradient of 2 colors, from right to left.
Each transaction have a hash. In our case, those hashes are :
  • dc79b6d28309783a0aa2b47be2037626fbd19d93ad1338d187c27df0a1d5e1a4
  • 49d2adb6e476fa46d8357babf78b1b501fd39e177ac7833124b3f67b17c40c2a
A hash is a 64 characters string. So i will cut each line in 64 parts.
It's also an hexadecimal value, so each character is a value between 0 and f.
Each character will be a point.
  • above the line if the value is above 8
  • under the line if the value is under 8
Rather than draw a line, i will draw a spline which link each point.
It will be more beautiful with a growing factor from left to right.
And it is also a mean to see the "true" height of the transaction on the left side.
Then i will add iterations and hasard.
I will iterate on each spline.
At each point, i will substract or add a random value.
So the lines becomes ribbons.
Then I will use transaprency.
And that's it !