Plot Julia图函数数组问题
来自Matlab,我正在努力找出以下不起作用的原因:Plot Julia图函数数组问题,plot,julia,gadfly,Plot,Julia,Gadfly,来自Matlab,我正在努力找出以下不起作用的原因: plot(x=rand(10),y=rand(10)) 正确生成图形 x=rand(10) y=rand(10) plot(x,y) 产生错误: 错误:plot没有方法匹配plot(::数组(Float64,1),::数组(Float64,1)) 如果有人能向我解释为什么在绘图线中嵌入代码会产生结果,但事先定义变量会导致错误,我将不胜感激。逻辑上说,它们应该产生相同的结果 我使用的是Julia v 0.3.1,并加载了Gadfly作为图表
plot(x=rand(10),y=rand(10))
正确生成图形
x=rand(10)
y=rand(10)
plot(x,y)
产生错误:
错误:plot
没有方法匹配plot(::数组(Float64,1),::数组(Float64,1))
如果有人能向我解释为什么在绘图线中嵌入代码会产生结果,但事先定义变量会导致错误,我将不胜感激。逻辑上说,它们应该产生相同的结果
我使用的是Julia v 0.3.1,并加载了Gadfly作为图表工具。在第一种情况下,您使用的是关键字参数语法,而不是赋值给变量
x
和y
(函数调用中=
的含义是特殊的)。为了在第二种情况下获得相同的效果,您应该使用
x=rand(10)
y=rand(10)
plot(x=x,y=y)
它将关键字参数
x
中变量x
中的值传递到plot
,如果没有传递,则将关键字参数y
中变量y
中的值传递到plot
。在编写代码之前编写以下内容:
using plots
plyplot()
正如Toivo的回答所指出的那样,这得到了语法上的理解。但更一般地说,您使用的绘图软件包可能与您熟悉的语法不同。例如,Winston——更像MATLAB——使用plot(x,y)绘制线连接的点,就像MATLAB一样,plot(x,y,“o”)绘制散点图。而牛虻则用plot(x=x,y=y,Geom.line)绘制线图,用plot(x=x,y=y)绘制散点图。或者,PyPlot比Gadfly更类似于MATLAB。