Data structures for chart data

Greetings, Happy Holidays!

I'm early in the development of a charting component and am trying to
stay on the right track and just wonder if there are any rules of
thumb regarding data storage of chart data.  I'm interested in both
ease of programming (ie, ability to capture a mouseover event and
figure out the data values beneath the mouse), efficiency
(memory-wise) and performance.  Structures I'm considering are:

linked list/TList
two dimensional array
single dimensional array of pointers to a record type

I realize that any of the above would work, but if anyone has had
difficulties using any of them in particular I'd be grateful for the
info.

Thanks!