如何在Mathematica中绘制一个复数

时间:2018-10-26 03:58:50

标签: wolfram-mathematica complex-numbers

这是我的尝试:

第一图方程。这就是我所知道的。

Plot[{Re[Sqrt[a]], Im[Sqrt[a]]}, {a, -3, 6}, AxesLabel -> {"a", "y"}, 
 PlotStyle -> {Red, Blue}]

然后绘制一个点。我不断收到错误消息?

complex[x_] = a + I b
a + I b

a = 3; b = 2;
complex[x]
3 + 2 I

Plot[complex[x]]
Plot::argr: Plot called with 1 argument; 2 arguments are expected.

Plot[{Re[a], Im[b]}, {a, 3, 3}, {b, 2, 2}, AxesLabel -> {"a", "y"}, 
 PlotStyle -> {Red}]
Plot::nonopt: Options expected (instead of {b,2,2}) beyond position 2 in 
An option must be a rule or a list of rules.

有什么建议吗? MM

1 个答案:

答案 0 :(得分:0)

您已经发现Plot用于绘制连续函数。在复杂平面上绘制单个数字的一​​种选择是写类似

z1 = 3 + 4 I

然后

ListPlot[{{Re[z1], Im[z1]}}]

ListPlot是用于绘制点列表的功能;此处,列表只有1个条目,由复数z1的组成部分组成。我希望您可以将其变成一个函数,以避免必须手动解构复数。

与Mathematica一样,您可以采用其他方法的全部工具,但这似乎是最简单的方法。供将来参考,Mathematica在https://mathematica.stackexchange.com的Stack Exchange宇宙中有自己的存在。

顺便说一句,在我写作时,请不要对您自己对complex的定义感到困惑。输入上面的第一个表达式,然后输入Head[z1]并查看返回的内容。万一不是立即显而易见,Mathematica会将I理解为虚构单位Sqrt[-1]。复数是Mathematica中的一等公民,而不是像许多概念匮乏的编程语言那样的事后思考。