fgets
добавляет новую строку в строку, поэтому вы получите bob\n\0
, который не совпадает с bob\0
.
axes
Классический трюк MATLAB, когда приходится иметь дело с различными axes
свойствами. По сути, мы собираемся создать новый объект axes
, поместить его поверх драгоценного, а затем сделать его прозрачным (без цвета фона), чтобы мы могли видеть, что позади, но мы будем держать линии сетки хорошо видимыми там, где мы хотим их.
Так сразу после вашего примера кода добавьте:
ax1 = gca ; % get handle of initial axes
ax2 = axes ; % create new axe and retrieve handle
lim = [0 numlabels] ; % Prepare X and Y properties
tks = 0:numlabels ;
% superpose the new axe on top, at the same position
set(ax2,'Position', get(ax1,'Position') );
% make it transparent (no color)
set(ax2,'Color','none') ;
% set the X and Y properties
set(ax2, ...
'XLim',lim,'XTick',tks,'XTickLabel','' ,...
'YLim',lim,'YTick',tks,'YTickLabel','' ) ;
% now set your grid properties
set(ax2,'GridColor','k','GridAlpha',1)
Это даст вам ( данные немного отличаются, потому что я случайно сгенерировал матрицу путаницы ):
[1121 ]
Конечно, теперь у вас есть полный контроль над линиями сетки, поэтому вы также можете уточнить, как они выглядят через свойства сетки axes
. Несколько интересных свойств:
GridLineStyle
- Стиль линий для линий сетки GridColor
- Цвет линий сетки GridAlpha
- Сетка- прозрачность линии LineWidth
- Ширина линии Для получения дополнительной информации см. документацию по Свойства осей
Хорошо! Я нашел запрошенную вещь для получения вертикальной и горизонтальной линии, которая просто добавляет линии, используя plot и удерживая:
Я использовал следующий код в конце упомянутого в моем вопросе: [ 112]
hold on
plot ([2 2],get(gca, 'YLim'), 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot ([1 1],get(gca, 'YLim'), 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot ([3 3],get(gca, 'YLim'), 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot ([4 4],get(gca, 'YLim'), 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot (get(gca, 'XLim'), [1 1], 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot (get(gca, 'XLim'), [2 2], 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot (get(gca, 'XLim'), [3 3], 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
plot (get(gca, 'XLim'), [4 4], 'Color', [0.15, 0.15, 0.15],'LineWidth',0.5)
Я использовал 1, 2, 3 и 4, потому что у меня есть четыре класса, и в конце каждого результата прогнозирования класса мне нужно построить линию. Надеюсь, что это будет полезно