4th Street Bar Hive-Bar

Hive-Bar Powered by Hive beta-fdb5b5b

Community post

Who’s receiving delegations? – Colored


By suggestion of @miniature-tiger (https://steemit.com/cryptocurrency/@miniature-tiger/re-verodato-how-s-receiving-delegations-20180612t111623751z) I put some different colors on the chart showing the main accounts receiving delegations (https://steemit.com/cryptocurrency/@verodato/how-s-receiving-delegations#@miniature-tiger/re-verodato-how-s-receiving-delegations-20180612t111623751z).

Each color represents a different type of account, as shown by the legend. I could have possibly made some errors classifying the accounts into types so please correct me if I am wrong.


The code

Now let's see the R code to build the chart. First we have to classify each top 30 account into a type.

platforms <- data.table(name = c('dlive','dsound','dtube','busy','busy.pay','utopian-io','steemhunt','steempress-io','tribesteemup','esteemapp'), type = 'platform')
bidbots <- data.table(name = c('postpromoter','appreciator','smartsteem','buildawhale','upme','rocky1','booster','therising','upmewhale','boomerang','minnowbooster','tipu'), type = 'bid-bot')
admin <- data.table(name = c('steemcleaners','spaminator'), type = 'admin')
individuals <- data.table(name = c('sweetsssj','kpine','surpassinggoogle','adamkokesh','v4vapid','canadian-coconut'), type = 'individual')
unknown <- data.table(name = c('steemed-proxy'), type = 'unknown')

Then we consolidate all the types into the "type" data.table. In the next step we associate colors to each type of account.
type <- rbind(platforms,bidbots,admin,individuals,unknown)

color <- data.table(
  color = c('#a9dba9','#ff8989','#505793','#f9ff98','#ffffff'),
  type = c('platform','bid-bot','admin','individual','unknown')
)

setkey(color,type)
setkey(type,type)
type <- merge(color,type)

The "treemap" function is almost the same as the one from the last post but it is worth showing it here because there are some subtle differences. ```` setkey(type,name) setkey(top_rvc,name) df <- data.frame( type[top_rvc][order(rvs,decreasing = T)] )

library(treemap)
treemap(df,
index='name',
vSize = 'rvs',
vColor = 'color',
type = 'color',
title="Top 30 accounts that receive most delegations",
fontsize.labels = 20,
force.print.labels = T,
overlap.labels = 0.4,
algorithm = 'pivotSize'
)

<br>
Finally, the legend, that was built outside of the treemap function. 

esquema_cores <- color[,color]
labels <- color[,type]

grid.newpage()
altura <- 0.08
largura <- 0.05

x_pos <- 0.04
for(i in 1:nrow(color)){

vp <- viewport(x=x_pos,y=y_pos,width=largura,height=altura,just="bottom")
pushViewport(vp)
grid.rect(just="left",gp=gpar(fill = esquema_cores[i]))
upViewport()

vp <- viewport(x=x_pos + 0.07,y=y_pos,width=largura,height=altura,just="bottom")
pushViewport(vp)
grid.text(labels[i],just="left",gp=gpar(fontsize=14))
upViewport()

x_pos <- x_pos + 0.2  

}

<br>
There's much more lines of code here in comparison with last post. But now we have much more information in the same chart!
110 upvotes $53.33

Replies (16)

Review before signing

Posting as . Signing with . Keychain permission: Posting. Hive Keychain will ask you to approve this action next.


  
Technical details

Operation fingerprint: