Add function to calculate column widths if none specified