我是Python的新手,正在尝试在曲面上绘制一条曲线。
这是我到目前为止所到之处,并在s域中绘制了一个曲面:
struct A
{
int a;
char b;
};
struct B : A
{
int c; // place this before b?
};
我现在需要以不同的颜色绘制X = 0的曲线,这意味着该曲线沿着虚轴在同一表面上。 surf = ax.plot_surface(0,Y,Z)不起作用。有人有这种情节的经验吗?
答案 0 :(得分:1)
我假设您是要绘制y = 0而不是x = 0(因为x = 0会很无聊)。
由于您只想绘制数据的一个切片,因此不能使用meshgrid格式(或者,如果可以,则需要一些我不想弄清楚的奇怪索引)。
这是我如何绘制y = 0切片的情况:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import cmath
x = np.linspace(-400, 0, 100)
y = np.linspace(-100, 100, 100)
X, Y = np.meshgrid(x,y)
fc=50
wc=2*np.pi*fc
s = X + Y*1j
Z= abs(1/(1+s/wc))
fig = plt.figure()
ax = fig.gca(projection='3d')
surf = ax.plot_surface(X, Y, Z)
# create data for y=0
z = abs(1/(1+x/wc))
ax.plot(x,np.zeros(np.shape(x)),z)
plt.ylabel('Im')
plt.show()