In order to see the information you are looking for like we see in the screenshots you helpfully provided you'll need to do some configuration on your end. The Java agent can pick up the information you're looking for but you'll need to tell it to do so.
To give you a few specific examples:
Database: Provided you're using a supported database, we should get calls made to the database and make that part of the transaction. (See Java compatibility JDBC ) You would then see those reflected in the chart.
Web External: Calls you make to an outside service will show up if they are properly instrumented. You can find out more about capturing these calls from this KB document and this one.
Request queueing This is what happens before the request actually reaches your application (which is where the agent lives). You can learn more about this functionality in this KB document
What you are currently seeing in the graph is the remainder of the time the transaction took after the request was queued, any database or external calls were made and responses received.
If you need clarification or have further questions, please don't hesitate to ask.
Cheers,
Adrienne Kincaid | Tech Support Engineer | New Relic, Inc