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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    目的是想将三维散点投影到X-Y平面,三维点和其对应投影点之间用实线或虚线相连,1 [6 l/ R7 X# [$ W
    最好是虚线相连。现在能找的出X-Y平面上的投影点,但虚线相连实现不了,求指教。
      L& \* ~. u1 e5 d1 {1 t非常感谢!  ?0 c6 @* X9 w$ _
    4 Z- y: R5 {+ S  Z: ]' J2 P
    相关数据如下:
    # m# a5 b4 ?/ G, b) e2 \5 h) Iclear
    $ @& \4 N9 Z5 n8 Z, Cclose all- T8 }9 h, z0 {; t
    x=3+randn(100,1);" p% O# i, x+ z
    y=2+randn(100,1);- \7 H, c$ J. W% _% C! {7 s# i
    z=5+randn(100,1);
    ( _- D, ?. q- T- s8 ]. C  Xscatter3(x,y,z)
    - `% Z" t- ]9 b1 J1 kxlabel('X')
    / X% T5 s) N2 ]# _) tylabel('Y')
    0 D, L, o0 M9 |2 d8 @+ ezlabel('Z')
    + Z0 t) s' j: n4 a: `2 J0 @( ]% Dhold on
    $ t+ ]# M3 l( C4 X5 o  \scatter3(x,y,zeros(length(x),1))( b8 O# l" M$ a# {; w" J
    hold off
    4 J: A9 M8 S5 f3 m; n) S/ ^: D
  • 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 | 只看该作者
    你没有写画虚线的语句,当然画不出了
    7 \5 j! q+ `) gclear,clc
    " {  t/ L1 m% K" ^9 i0 Iclose all
    . E. v- T) `4 [$ c1 H' R
    & O) n+ E& e- q  \5 H8 Rx = 3+randn(30,1);
    ; `6 E% s1 ^' Z/ O" |9 `' e9 a, L+ _- Dy = 2+randn(30,1);6 F3 V! U, d5 s$ M1 P0 W
    z = 5+randn(30,1);
    $ n2 |" H, ?1 Sp = {'linestyle','none','marker','o'};2 V! B- J) q" K3 j# A
    line(x,y,z,p{:});
    4 T  H& M/ |7 J+ P2 h: g, ]1 jline(x,y,0*z,p{:},'color','g');# I- L' S. C9 K* ^
    line([x x]',[y y]',[z 0*z]','linestyle','--','color','k')' N# C4 [+ u+ H  o
    xlabel('X')
    . g  |; X$ E; N- h8 a% _# `ylabel('Y')
    # |' p; s) t& I6 S: W- A8 R) G5 Fzlabel('Z')! Z7 r1 y4 |/ S7 y
    grid on3 _$ g$ X; S1 H# r% p( |% O
    view(-30,50)

    该用户从未签到

    4#
    发表于 2023-1-12 13:29 | 只看该作者
    个人觉得这里plot3函数还是要酌情使用- A6 b0 w0 B$ }% N$ l
    close all5 S' d0 i# i8 d7 I6 E6 ~; S2 h
    clear,clc
    ; f* y/ f, H1 G! h2 V" l: g  k% @# |9 n2 S" b
    x = rand(100,1);, E$ ?) P; p1 ^( j/ i
    y = rand(100,1);) m  s3 r- D4 B/ N2 E) V
    z = rand(100,1);( I' I0 i- K; h' h! Z8 W* U) ~  \

    1 j. T# ]1 Z2 e* otic, for idx=1:100, cla; plot3([x x]',[y y]',[z 0*z]','-.'); end; toc;" g7 ]1 g( X/ G2 O
    tic, for idx=1:100, cla; line([x x]',[y y]',[z 0*z]','linestyle','-.'); end; toc;
    6 I# E$ i( @) a7 U$ c; s$ s) F5 T# B9 n
    Elapsed time is 4.888176 seconds.
    5 s1 [; @7 j2 ?  i* J' c5 cElapsed time is 2.246748 seconds.
    " l, C  j* @) `可以看出plot3因为是个比较高级的函数所以效率不如line函数
    ' I+ Q/ Q$ Y) U8 G- e& W而且plot3还需要hold on/off- ^* J0 s, {4 w/ I6 m& l" g" ]
    所以多数情况(小部分情况,例如你要刷新什么的和一些其他较少见的情况plot更加适合)下line是比plot3/plot更好的选择+ e5 e3 k: e8 p
    # T& B& ?" |9 P7 L2 Y
    另外对于scatter/scatter3,l在点数较少(不多于100个)的情况下line也有不错的效率优势
    ( f+ ~. R& q- a0 c2 Z但是如果对每个点有不同的要求(例如不同大小)或者其他特殊情形下(例如点较多),还是用专门做散点的scatter/scatter3较好
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-4 11:21 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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