簡體   English   中英

如何顯示 matplotlib 圖?

[英]How to show matplotlib plots?

我確信 python 的matplotlib配置是正確的,因為我用它來繪制一些數字。

但今天它因為某種原因停止工作。 我用非常簡單的代碼對其進行了測試,例如:

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

在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') 

您必須在末尾使用plt.show()才能看到圖

如果其他人在這里使用Jupyter筆記本電腦,你只需要

%matplotlib inline

“%matplotlib inline”的用途

將圖表保存為png

plt.savefig("temp.png")

當您在代碼中完成所有初始化以便查看plot的complet版本時,必須使用show()方法:

import matplotlib.pyplot as plt

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

plt.plot(X,y)函數只是在畫布上繪制圖形。 要查看繪圖,必須在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()
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()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM