1) добавление данных (уже сделал 3 колонки)
НУ ясный хер можно

конкретнее: почитай про датапровайдер
2) изменение ширины столбцов (на программном уровне), т.к. по дефолту название не вмещается в колонку.
из хелпа
myDataGrid.getColumnAt(index).width
3) можно ли добавлять данные не текстового характера (графику например)?
используй CellRenderer
4) сортировка по столбцам
встроенная сортировка вроде как сортирует как строки
как поменять ее - не знаю точно, не разбирался
5) как менять цвет выделения записей? С зеленого на любой другой? В принципе это проблема не DataGrid а компонентов вообще. Где про это можно почитать?
данная проблема решилась при использовании CellRenderera
кокретно пример можно тут глянуть
http://www.superbroker.ru/bar/AboutDeskQuote.shtml