For the angled x-axis labels you can add the following option to your layout JSON:
"xaxis": {
"tickangle": -45
}
And for the data labels, you need to pass the values separately in an array to the text parameter in the data JSON:
"text": ["15", "23", "27"],
"textposition": "auto"