【问题标题】:Plotting the graph on the complex plain在复平面上绘制图形
【发布时间】:2015-10-19 14:06:06
【问题描述】:

我想绘制函数图形:w(s) = 1/(1+s)

s 是虚数单位 (1j) 和名为 omega 的变量的乘积;即s = 1j*omega

如何使用 Python(2.7 或 3.4)和 matplotlib 在复数轴(实数和虚数)上绘制它?

【问题讨论】:

    标签: python python-2.7 python-3.x matplotlib complex-numbers


    【解决方案1】:

    您的问题不清楚您要绘制什么,但假设 omega = x + iy 是您希望绘制 w(s) 作为函数的数字,您必须决定如何呈现复杂数字 w(s)。您可以选择用笛卡尔坐标轴表示实数 (x) 和虚数 (y) 轴的图,并将 w(s) 的绝对值绘制为颜色,或者您可以选择分别绘制实部和虚部。 例如,

    import matplotlib as plt
    import numpy as np
    
    x = np.linspace(-0.5,0.5,100)
    y = np.linspace(-3,0,100)
    X, Y = np.meshgrid(x,y)
    
    def f(x, y):
        return 1./(1+1j*(x+1j*y))
    
    import pylab
    pylab.imshow(np.abs(f(X,Y)))
    pylab.show()
    

    【讨论】:

    • 非常感谢!但我不完全明白你的意思,特别是为什么必须使用颜色......如果可能的话,你能解决我的功能吗?
    • 如果omega 是一个复数,它有一个实部和一个虚部,可以在二维平面上表示。所以你需要在第三维中绘制w(s) 的值(例如,根据绝对值对平面的点进行着色)。如果omega 是真实的,那么只需在常规线图上绘制|w(s)|omega
    猜你喜欢
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-26
    • 1970-01-01
    相关资源
    最近更新 更多