bar: update algorithm to position bar texts
bar: update algorithm to position bar texts

* Inside texts are rotated only if the rotation helps shrink the text as
  little as possible.

* Outside texts are rotated only if the rotation doesn't leave the text
  perpendicular to the bar.

plotly/plotly.js,etpinard/plotly.js,etpinard/plotly.js,etpinard/plotly.js,aburato/plotly.js,asolagmbh/plotly.js,aburato/plotly.js,iongroup/plotly.js,iongroup/plotly.js,plotly/plotly.js,plotly/plotly.js,plotly/plotly.js,asolagmbh/plotly.js,iongroup/plotly.js,asolagmbh/plotly.js