Python和科学计算认证群组  - 讨论区

标题:请问在matplotlib中能画这样的图吗?

2011年02月25日 星期五 18:09

请问在matplotlib中能画这样的图吗?

2011年02月25日 星期五 18:42

matplotlib能画三维曲线,因此画上面的图也不困难。

例如:

http://matplotlib.sourceforge.net/examples/mplot3d/lines3d_demo.html

 

2011年02月25日 星期五 20:15

仿照做了一个,效果如下:

下面是程序,数据的计算只为绘制出图,没有实际意义:

import matplotlib as mpl

from mpl_toolkits.mplot3d import Axes3D

import numpy as np

import matplotlib.pyplot as plt

from scipy import stats

 

fig = plt.figure()

ax = fig.gca(projection='3d')

for x in [3,6,9]:

    y = np.linspace(-5+x*0.5,5+x*0.5,100)

    z = stats.norm.pdf(y,x*0.5,1)

    ax.plot([x]*100, y, z, "r")

    ax.plot([x,x],[0.5*x,0.5*x],[0,z[50]],"r--")

x = np.linspace(1,10,20)

y = x*0.5

z = [0]*20

ax.plot(x,y,z)

ax.set_xlabel("x")

ax.set_ylabel("y")

ax.set_zlabel("Probability density")

ax.set_zlim3d(0,0.5)

ax.set_title("Ordinary Linear Regression for y=0.5*x")

plt.show()

2011年02月25日 星期五 20:34

太牛了

2011年02月27日 星期日 11:36

太牛了,虽然gallery里有很多图,但有些还是不知道怎么转化。

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号