The lack of processing power, severe memory and I/O speed constraints make it very difficult to create the kind of user experience you expect to find on a tablet computer. Even dealing with fonts is a major problem due to the memory required. Essentially you are using something which has the power of a desktop computer from the 1980's, and UIs back then were extremely basic for the same reasons.
Given that you can buy a 7" Android tablet for $70, why not just create your UI on that and connect it to the Arduino. This has the advantage of separating the complex, and therefore potentially buggy, user interface code from the core Arduino code that in most cases is supposed to run continuously for months at a time without crashing, hanging, or being restarted just because there is a UI update available.
The kind of slick user interfaces you find on modern oscilloscopes are usually provided by an embedded Windows CE or Linux computer running on a GHz processor which are basically hardware equivalent to an Android tablet.