wondersoul 发表于 2007-8-16 16:57

plot绘图时线形的设置问题

代码如下:(matlab版本7.1下运行)
x=; y=sin(x); type=['*';'-';'o';'--'];
k=menu('直线类型','星号','实线','圆圈','虚线'); plot(x,y,type(k))

出现错误:
??? Error using ==> Untitled
Error using ==> vertcat
All rows in the bracketed expression must have the same
number of columns.

将type=['*';'-';'o';'--']改为type=['*';'-';'o';'-']后无错.搜索了下没找的相关资料,想问下怎么得到虚线图.

[ 本帖最后由 ChaChing 于 2009-12-25 13:10 编辑 ]

pengweicai 发表于 2007-8-16 18:28

不配备的问题。
type 里面只有4个量。menu 里面有5个量。

wondersoul 发表于 2007-8-16 18:32

那为什么将type=['*';'-';'o';'--']改为type=['*';'-';'o';'-'](这时type 里面4个量,menu 里面5个量)就没错了?

[ 本帖最后由 ChaChing 于 2009-12-25 13:03 编辑 ]

pengweicai 发表于 2007-8-16 21:49

把 type=['*','-','o','--'] 里面的分号该成 逗号就可以了。
type 与menu 行 ,列 不匹配。

wondersoul 发表于 2007-8-17 11:09

改了后没错误了,可是点画虚线画出来的却是实线.(可与plot(x,y,'--')画的虚线对比下).

[ 本帖最后由 ChaChing 于 2009-12-25 13:17 编辑 ]

pengweicai 发表于 2007-8-17 11:14

再在图形界面上 手动调整。

eight 发表于 2007-8-17 20:02

最好不要出现这种歧义,两个变量的矩阵维数最好一致,要不都是4*1,要不都是1*5

mechanic05 发表于 2007-10-9 12:54

type=['*';'-';'o';'--']
k=menu('直线类型','星号','实线','圆圈','虚线')
请问上面的线型语句能用于ezpot绘图时用吗?谢谢!!

花如月 发表于 2007-10-9 13:50

回复 #8 mechanic05 的帖子

自己试试,应该可以的

ChaChing 发表于 2009-12-25 13:55

回复 8楼 mechanic05 的帖子

help下ezplot!
是不可以的! 但可以藉由handle回传再定义!

ChaChing 发表于 2009-12-25 14:21

回复 楼主 wondersoul 的帖子

这个问题, 楼主了解真正原因了吗?
几位大牛可能未详细发现LZ的真正问题, 疏忽了LZ的真正原因!!

LZ的错误, 仅仅是type=['*';'-';'o';'--'];出问题!!
与menu毫无关系, 当然更无所谓行列及数量匹配问题!!

ChaChing 发表于 2009-12-25 15:17

因为仅是个小概念, 个人打字又慢, 本想留着待网友发掘, 但担心个人还需重新热身, 就占去网友练习的机会了!
1.前三个符号为1*1, '--'为1*2, 当然无法type=['*';'-';'o';'--'], 而改成type=['*';'-';'o';':']即可以!
2.改成逗号type=['*','-','o','--'], 其实等同type='*-o--', 不是1*4, 而是1*5! type(4)='-'并不是'--'!
3.应该改成
x=; y=sin(x); type={'*';'-';'o';'--'};
k=menu('直线类型','星号','实线','圆圈','虚线'); plot(x,y,char(type(k)))

zhouyang664 发表于 2010-10-7 10:12

x=; y=sin(x); type={'*';'-';'o';'--'};
k=menu('直线类型','星号','实线','圆圈','虚线'); plot(x,y,type{k})
注意plot中调用的时候一定要用{},如果用(),则调用的元素为cell类型,而用{}调用的元素为string类型!

qibbxxt 发表于 2010-10-7 13:43

回复 zhouyang664 的帖子

ls说的不错,不过,我觉得
条条道路通罗马,12#和13#的都对,只是个人的习惯不一样,有时候也不一定是不知道,只是一般就写其中一种而已,也可以用x=0:0.1:2*pi; y=sin(x); type={'*';'-';'o';'--'};
k=menu('直线类型','星号','实线','圆圈','虚线'); plot(x,y,feval(@(x)x{:},type(k)))

ChaChing 发表于 2010-10-8 00:13

的确每个人的习惯可能不一样, 也不一定是不知道!
但只要是可以解决问题的, 互动交流学习也不错! 不是吗:handshake
还有个人对老帖的讨论, 抱持特别嘉许的看法, 因有在看资料~
另"@"为较新/後面的东东, 个人真的是较不熟:lol
页: [1]
查看完整版本: plot绘图时线形的设置问题