如何在python中显示matplotlib图

时间:2011-12-20 11:57:50

标签: python matplotlib

我确信matplotlib for python的配置是正确的,因为我用它来绘制一些数字。

但今天它因某种原因停止工作。我用非常简单的代码测试了它,如:

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0, 5, 0.1)
y = np.sin(x)
plt.plot(x, y)

没有错误,但没有显示数字。

我在Ubuntu中使用python 2.6,Eclipse

7 个答案:

答案 0 :(得分:58)

在matplotlib中,您有两个主要选项:

  1. 创建您的图并在最后绘制它们:

    import matplotlib.pyplot as plt
    
    plt.plot(x, y)
    plt.plot(z, t)
    plt.show()
    
  2. 创建绘图并在创建后立即绘制它们:

    import matplotlib.pyplot as plt
    from matplotlib import interactive
    interactive(True)
    
    plt.plot(x, y)
    raw_input('press return to continue')
    
    plt.plot(z, t)
    raw_input('press return to end')
    

答案 1 :(得分:22)

您必须在最后使用plt.show()才能看到情节

答案 2 :(得分:5)

如果其他人在这里使用Jupyter笔记本,你只需要

%matplotlib inline

Purpose of "%matplotlib inline"

答案 3 :(得分:4)

将图表保存为png

plt.savefig("temp.png")

答案 4 :(得分:0)

当你在代码中完成所有初始化时,你必须使用show()方法才能看到剧情的complet版本:

import matplotlib.pyplot as plt

plt.plot(x, y)
................
................
plot.show()

答案 5 :(得分:0)

plt.plot(X,y)函数仅在画布上绘制图。为了查看图,您必须在plt.show()之后指定plt.plot(X,y)。所以,

import matplotlib.pyplot as plt
X = //your x
y = //your y
plt.plot(X,y)
plt.show()

答案 6 :(得分:0)

import numpy as np

import matplotlib.pyplot as plt

x1 = 5 * np.random.rand(50)

x2 = 5 * np.random.rand(50) + 25

x3 = 30 * np.random.rand(25)

x = np.concatenate((x1, x2, x3))

y1 = 5 * np.random.rand(50)

y2 = 5 * np.random.rand(50) + 25

y3 = 30 * np.random.rand(25)

y = np.concatenate((y1, y2, y3))

color_array = ['b'] * 50 + ['g'] * 50 + ['r'] * 25

plt.scatter(x, y, s=[50], marker='D', c=color_array)

plt.show()