Конфликт между "ShowText" и "LineStyle" в функции contourf в MATLAB R2019a?

Я использую код следующим образом. Но цифры разные, когда я запускаю свой код в MATLAB R2014a и R2019a (на одном компьютере, Win7 64bit). Кажется, есть конфликт между 'ShowText' а также 'LineStyle' в функции contourf в MATLAB R2019a? То, что я хочу, это рисунок с текстом и без строки (как рисунок R2014a). Как я могу получить это в R2019a?

for i = 1 : 10
    for j = 1 : 10
        res(i, j) = i * j;
    end
end
contourf(res, 'ShowText', 'on', 'LineStyle', 'none');

Рисунок с использованием R2014a

показатель по R2014a

Рисунок с использованием R2019a

показатель по R2019a

Рисунок с использованием R2019a с помощью contourf(res, 'ShowText', 'on') только

рисунок R2019a с использованием только

1 ответ

После небольшого исследования я нашел это решение с помощью недокументированного MATLAB:

for i = 1 : 10
for j = 1 : 10
res(i, j) = i * j;
end
end
[c,hC] = contourf(res);
clabel(c,hC)
drawnow; % Important !
set(hC.EdgePrims(:),'Visible','off');

Что дает этот результат в R2017b:

Отказ от ответственности: это решение опирается на недокументированную функцию MATLAB, результаты могут отличаться в зависимости от вашей версии.

R2018a

Sardar Usama придумал альтернативное решение для R2018a в комментариях:

%drawnow; % Important !
%set(hC.EdgePrims(:),'Visible','off');
delete(hc.EdgePrims);
Другие вопросы по тегам