效果:
生成程序:
clear
close all
clc
K = 100;
% k = 1;
Matric = zeros(8,8);
% Matric_3D = zeros(9,8,8);
% Matric_3D = zeros(6,7,7);
Matric_3D = zeros(7,7,6);
for k =1:6
for Di=1:7
for Dj=Di:7
disp(["Di:", Di," Dj:", Dj])
T = Di*Dj/(K-Di-Dj+1);
P_a_00 = 0;
P_a_11 = 0;
P_a_0 = 0;
P_a_1 = 0;
for x=0:Di
P_a_0 = P_a_0 + nchoosek(Di, x)*nchoosek(2*k,1)*nchoosek(K-Di*(1+2*k)+(2*k-1)*x,Dj-x);
end
for x=1:Di
P_a_1 = P_a_1 + nchoosek(Di-1,x-1)*nchoosek(2*k,1)*nchoosek(K-Di*(1+2*k)+(2*k-1)*(x-1)+2*k,Dj-x);
end
for x=0:floor(T)
P_a_00 = P_a_00 + nchoosek(Di, x)*nchoosek(2*k,1)*nchoosek(K-Di*(1+2*k)+(2*k-1)*x,Dj-x)/P_a_0;
end
for x=ceil(T):Di
P_a_11 = P_a_11 + nchoosek(Di-1,x-1)*nchoosek(2*k,1)*nchoosek(K-Di*(1+2*k)+(2*k-1)*(x-1)+2*k,Dj-x)/P_a_1;
end
P_a_true = 0.5*(P_a_00 + P_a_11);
Matric_3D(Di,Dj,k)=P_a_true;
Matric_3D(Dj,Di,k)=P_a_true;
end
end
end
[X, Y, Z] = meshgrid( 1:7,1:7, 1:6); % 坐标
% 绘制切片图
figure;
h = slice(X, Y, Z, Matric_3D, [1,7], [1,7], [1,6]);
box on
shading interp; % 插值显示
colorbar; % 添加颜色条
xlabel('X'); ylabel('Y'); zlabel('Z');
set(h,"EdgeColor","none")
box on
grid on
hold on
plot3(1 * ones(1, 7), 1 * ones(1, 7),1:7, 'black', 'LineWidth', 0.5);
plot3(1:7,1 * ones(1, 7), 6 * ones(1, 7), 'black', 'LineWidth', 0.5);
plot3(1 * ones(1, 7), 1:7, 6 * ones(1, 7), 'black', 'LineWidth', 0.5);
plot3(7 * ones(1, 7), 1 * ones(1, 7),1:7, 'black', 'LineWidth', 0.5);
plot3(1:7,7 * ones(1, 7), 6 * ones(1, 7), 'black', 'LineWidth', 0.5);
plot3(7 * ones(1, 7), 1:7, 6 * ones(1, 7), 'black', 'LineWidth', 0.5);
xlim([1,7])
ylim([1,7])
zlim([1,6])
xlabel("Di")
ylabel("Dj")
zlabel("k")
变量形状: