d = { 'name': ['foo', 'foo', 'bar', 'bar'], 'g': ['A', 'B', 'A', 'B'], 'value': [80, 90, 15, 35] } ggplot(d) + geom_bar(aes(x='name', y='value', group='name'), stat='identity') Actual result:

When values are assigned to their own group, everything works as expected (note the mapping group='g'):
