abstracted chart view
got almost nothing done, commiting anyway