作业帮 > 综合 > 作业

matlab如何画出下面的图呢?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/28 18:47:37
matlab如何画出下面的图呢?

已知P和Q的7*7矩阵关系矩阵,如何Pi和Qj可以连通,就是1,否则为0.R和Q的同样已知,那么matlab应该如何编程画出这样的图形呢?

就只要中间点点的连线即可,背景的数字啊虚实啊什么的忽略掉吧~
%以下给Q,P,R,S格7个点给上坐标Qx=1:7;Qy=7*ones(1,7);Px=1:7;Py=ones(1,7);Rx=ones(1,7);Ry=1:7;Sx=7*ones(1,7);Sy=1:7;%以下用随机数生成对称的关系矩阵PQ,RS%PQ表示P点和Q点的连接关系,RS表示R点和S点的连接关系%这里用随机数产生PQ=zeros(7);PQ(tril(true(7),-1))=randi(2,[21 1])-1;PQ=PQ+PQ';SR=zeros(7);SR(tril(true(7),-1))=randi(2,[21 1])-1;SR=SR+SR';%以下根据坐标画出各点并给每点标记plot(Qx,Qy,'.');hold onplot(Px,Py,'.');plot(Rx,Ry,'.');plot(Sx,Sy,'.');for ii=1:7    text(Qx(ii)-0.2,Qy(ii)+0.5,num2str(ii,'Q%d'));    text(Px(ii)-0.2,Py(ii)-0.5,num2str(ii,'P%d'));    text(Rx(ii)-0.5,Ry(ii),num2str(ii,'R%d'));     text(Sx(ii)+0.1,Sy(ii),num2str(ii,'S%d'));end%以下根据PQ和RS矩阵,连接各点PQ用红线,RS用黑线for ii=1:7    for jj=ii:7        if PQ(ii,jj)            plot([Px(ii) Qx(jj)],[Py(ii) Qy(jj)],'r-');        end        if SR(ii,jj)            plot([Sx(ii) Rx(jj)],[Sy(ii) Ry(jj)],'k-');        end    endend
hold offaxis equalaxis([0 8 0 8]);
某次根据随机矩阵的连线结果如下