Я слышу тебя. Мне тоже не нравятся эти кавычки.
Если вам не важна производительность, вы можете просто преобразовать все строки в категориальные с целью отображения.
t = {'a','b','c'};
tbl = cell2table(t,'VariableNames',{'1','2','3'});
tbl_for_display = varfun(@(x) categorical(x), tbl)
Производит :
tbl_for_display =
1×3 table
Fun_1 Fun_2 Fun_3
_____ _____ _____
a b c
Вот более чистый способ сделать это с помощью вспомогательной функции:
function out = nice_table_for_display(tbl)
out = tbl;
for i = 1:width(tbl)
if iscellstr(tbl{:,i}) || isstring(tbl{:,i})
out.(out.Properties.VariableNames{i}) = categorical(tbl{:,i});
end
end
end
Итак, вы делаете:
>> nice_table_for_display(tbl)
ans =
1×3 table
1 2 3
_ _ _
a b c
Или, если это не так хорошо, вам нужно go полностью и написать собственную замену для table.disp
.