找回密码
 注册
关于网站域名变更的通知
查看: 448|回复: 3
打印 上一主题 下一主题

问个三维散点图的投影问题

[复制链接]
  • TA的每日心情
    开心
    2022-1-21 15:21
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2023-1-12 11:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    目的是想将三维散点投影到X-Y平面,三维点和其对应投影点之间用实线或虚线相连,
    ! c* N5 ]9 P! {! O+ n最好是虚线相连。现在能找的出X-Y平面上的投影点,但虚线相连实现不了,求指教。
    1 K3 X5 }; M3 }! x5 H非常感谢!6 {9 h' i3 S9 X! L) G( d

    . G4 o- \3 O# u3 C8 i相关数据如下:2 J4 f% n) F! H: Q. Y+ i
    clear
    / w, z4 I  o4 B. ^6 Z$ L2 `close all
    3 E  j' E3 Y) _1 F; V7 V' c, N; cx=3+randn(100,1);
    $ O" F+ X' P8 s: iy=2+randn(100,1);
    4 w8 `# o1 t; _" az=5+randn(100,1);
    $ J# a$ b( W' f" bscatter3(x,y,z)7 m) p7 e+ i( U% s8 ]+ d  Y7 ?/ [" d7 t
    xlabel('X')) E0 g) l( a# f0 d/ w1 y4 Q
    ylabel('Y'), i$ q7 q5 V+ f* @7 ?
    zlabel('Z')0 i7 D  g, n5 K  I' C; I5 R
    hold on
    : I+ `/ `6 Y( @9 C, Q2 Lscatter3(x,y,zeros(length(x),1))0 @% y+ i$ ^: w& x6 V
    hold off% X. w2 I7 g8 M3 A' t, Z
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2023-1-12 13:12 | 只看该作者
    plot3命令应该可以做到吧?你可以查查帮助
  • TA的每日心情
    开心
    2022-1-29 15:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
    发表于 2023-1-12 13:21 | 只看该作者
    你没有写画虚线的语句,当然画不出了
      W: Z0 d. u; O( A' Pclear,clc$ W% K) F8 b8 I' i" {- p& |* v$ i
    close all
    , N0 z- g0 u/ Q7 y" Z) Q" E( N" `  e% B( |; Z) S% c
    x = 3+randn(30,1);
    : r/ L1 k1 f; h, `& j5 Zy = 2+randn(30,1);
    9 g  f, i( p' Y. Nz = 5+randn(30,1);
    1 ~* H& {( o8 V# c6 @& p# n; zp = {'linestyle','none','marker','o'};- _! |6 s+ `' q6 d- N' L4 x* \! u% I
    line(x,y,z,p{:});
    3 y' I. n) u: X" P" g  E6 w% Iline(x,y,0*z,p{:},'color','g');
      O# {* g- r6 ?line([x x]',[y y]',[z 0*z]','linestyle','--','color','k')7 f) ]( J9 s& @  F/ C. V6 A; n
    xlabel('X')
    1 _" ]3 i5 m9 cylabel('Y')
    - @! Q( c8 v' y6 u, U+ ?zlabel('Z')
    0 e6 A! A6 @6 y: {1 Dgrid on; t3 q% b0 A2 a4 I$ F' j5 W8 F
    view(-30,50)

    该用户从未签到

    4#
    发表于 2023-1-12 13:29 | 只看该作者
    个人觉得这里plot3函数还是要酌情使用& D* t- I3 C0 @' C# q$ p5 n
    close all
    - @/ {- i- V7 M, z7 c, Y# p( oclear,clc' l" g3 {( y% a7 E" `
    ' W3 _! `3 Y- Z5 X$ J) z  v  k
    x = rand(100,1);
    / W' S+ J4 Z5 py = rand(100,1);1 Q: A* }3 m4 f0 K' ]
    z = rand(100,1);
    ; C' V" @: c' ^
    . S9 a) ^7 G1 ?2 J: o: r& v9 Utic, for idx=1:100, cla; plot3([x x]',[y y]',[z 0*z]','-.'); end; toc;
    " T' @  z! i7 F; e/ f, ?/ Etic, for idx=1:100, cla; line([x x]',[y y]',[z 0*z]','linestyle','-.'); end; toc;# U  C+ v6 `& V6 I- a0 B" |
    ! H( |7 P( @$ P) E" ^0 h
    Elapsed time is 4.888176 seconds.
    1 z4 q# }  |7 l( xElapsed time is 2.246748 seconds.
    ( c. a9 |6 _7 f; G, z4 X; }* h可以看出plot3因为是个比较高级的函数所以效率不如line函数
    - V) m. ^8 s7 G1 A+ @  A而且plot3还需要hold on/off
    2 I% }/ t5 u" J( l! F0 A所以多数情况(小部分情况,例如你要刷新什么的和一些其他较少见的情况plot更加适合)下line是比plot3/plot更好的选择
      w0 j) O; C) {& z) P, _: o0 W4 A1 G* ]! |4 [/ ~6 B  [& G
    另外对于scatter/scatter3,l在点数较少(不多于100个)的情况下line也有不错的效率优势$ u( w& b0 F- T9 }
    但是如果对每个点有不同的要求(例如不同大小)或者其他特殊情形下(例如点较多),还是用专门做散点的scatter/scatter3较好
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-23 18:52 , Processed in 0.156250 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表