2015-05-12 4 views
0

я три значения точности и отзыв следующим образом:Как построить график точности и вызова в Matlab?

precision = 0.4  recall= 0.45 
precision= 0.58  recall= 0.52 
precision= 0.6  recall= 0.53 

выше значения показывают, когда точность 0,4 отзыва будет 0,45 и наоборот, я хочу, чтобы построить эти результаты в виде графика, который должен показать увеличение и уменьшение точность и отзыв значений относительно друг друга.

Я хочу показать результат этих значений в одном графике, который должен отображать 3 кривые (линии) с разными цветами для другого представления.

+2

вы должны представить примерный график, чтобы проиллюстрировать результат, на который вы нацеливаетесь; Я понятия не имею, как вы будете строить 3 линии на основе 3 дискретных точек. –

+1

Вы уверены, что не хотите, чтобы 1 линия соединяла эти точки? У вас недостаточно информации для 3-х линий ... – Dan

+0

@ m.s. на самом деле это три значения, полученные из трех разных экспериментов, каждый эксперимент дает 1 точность и значение отзыва, я хочу нарисовать кривые в одном графике, чтобы я мог их сравнить. –

ответ

1

Я в основном догадываюсь о том, чего вы пытаетесь достичь, чтобы быть честным, но, возможно, все, что вы ищете, это команда «держать все». Если это не то, чего вы хотите достичь, пожалуйста, укажите пример того, как вы рисуете одну кривую, поэтому мы можем подтолкнуть вас в правильном направлении того, как это можно расширить.

figure 
hold all 
plot(calculate_my_results(0.4,0.45)) 
plot(calculate_my_results(0.58,0.52)) 
plot(calculate_my_results(0.6,0.53)) 
+0

На самом деле, я пытаюсь сравнить кривые для этих трех пар значений, поэтому я хочу их строить отдельно с отдельными цветами, спасибо за ваш ответ, но я получаю ошибку 'Undefined function 'calculate_my_results' для входных аргументов типа 'double' 'и не выводится вывод, спасибо еще раз –

0

Чтобы узнать, как изменение отзыва зависит от точности, вы можете построить одну переменную против другой. Он будет производить только одну строку, как отмечают другие комментаторы, но она покажет вам взаимосвязь между ними.

recall = [0.45 0.52 0.53]; 
precision = [0.4 0.58 0.6]; 
plot(recall, precision) 
xlabel('Recall'); ylabel('Precision'); 

Если вам действительно нужны три линии, то ответ michael_0815 - тот, который вы хотите.

+0

спасибо за ваш ответ, но я не получаю никакого отображения результата –