首页 > 解决方案 > 如何在 matlab 或 R 中绘制这些

问题描述

我有三个表达式,即

$\frac{a^2(1-b)}{a+b-ab}+(1-a)a $

$\frac{ab}{a+b-ab}$

$(1-a)^2$

我想在ab坐标中绘制一个图,当第一个是黄色最大,第二个是蓝色最大,第三个是红色最大时。(为什么乳胶不起作用)我该如何处理有那个问题。

标签: rmatlab

解决方案


您的问题不是 100% 清楚,但我相信这就是您所要求的。我用过matlab。

len = 1000;
a_ = linspace(0, 5, len);
b_ = linspace(0, 5, len);
x = zeros(len);
for a = 1:len
    for b = 1:len
        val(1) = (a_(a)^2 * (1-b_(b))) / (a_(a) + b_(b) - a_(a)*b_(b)) + (1-a_(a))*a_(a);
        val(2) = a_(a)*b_(b) / (a_(a) + b_(b) - a_(a)*b_(b));
        val(3) = (1 - a_(a))^2;
        if max(val) == val(1)
            x(a,b) = 0.2;
        elseif max(val) == val(2)
            x(a,b) = 0;
        elseif max(val) == val(3)
            x(a,b) = 0.65;
        end
    end
end
imagesc(x)
colormap('hsv')
caxis([0 1])
set(gca, 'XTick', linspace(0, len, 5))
set(gca, 'YTick', linspace(0, len, 5))
set(gca, 'XTickLabel', linspace(0, 5, 5))
set(gca, 'YTickLabel', linspace(0, 5, 5))

我认为这是对的。不幸的是,我无法对其进行测试,但希望它可以满足您的需求。可能我打错了,所以如果它不起作用,请告诉我。显然,您可以更改零件以适合您。


推荐阅读