2011-09-08 29 views

Trả lời

18

Staven đã chỉnh sửa bài đăng của mình để bao gồm cách vẽ các giá trị dọc theo giá trị y 1, nhưng anh ta đã sử dụng danh sách Python.

Một biến thể mà nên nhanh hơn (mặc dù tôi đã không đo lường nó) chỉ sử dụng mảng NumPy:

import numpy as np 
import matplotlib.pyplot as pp 
val = 0. # this is the value where you want the data to appear on the y-axis. 
ar = np.arange(10) # just as an example array 
pp.plot(ar, np.zeros_like(ar) + val, 'x') 
pp.show() 
+0

Chức năng này là gì ** zeros_like() **? Bạn có thể vui lòng xác định nó. –

+2

đã sửa lỗi cú pháp. –

+2

zeros_like giống như np.zeros() cung cấp cho bạn một mảng chứa các số không, nhưng với _like() nó sẽ giả định hình dạng của mảng được cung cấp. Ngoài ra còn có một ones_like(), rất tiện dụng –

13

này sẽ vẽ các mảng "ar":

import matplotlib.pyplot as pp 
ar = [1, 2, 3, 8, 4, 5] 
pp.plot(ar) 
pp.show() 

Nếu bạn đang sử dụng ipython, bạn có thể bắt đầu nó với tùy chọn "-pylab" và nó sẽ import NumPy và Matplotlib tự động khi khởi động, vì vậy bạn chỉ cần viết:

ar = [1, 2, 3, 8, 4, 5] 
plot(ar) 

để làm một biểu đồ phân tán với các y tọa độ thiết lập để 1:

plot(ar, len(ar) * [1], "x") 
+0

Hi, Cảm ơn câu trả lời. Đây là cách tôi đã thử lần đầu tiên, nhưng có thể tôi không thể giải thích câu hỏi của tôi một cách chính xác. Cốt truyện mà nó vẽ là một đường liên tục được thực hiện bằng cách kết nối các điểm trong ar. Tôi có một mảng 1-D gồm 800 giá trị dữ liệu được phân phối trong (-1,6). Tôi chỉ muốn âm mưu các điểm trên một hằng số Y (http://static.inky.ws/image/644/image.jpg) nhưng với phương pháp bạn giải thích am nhận được một cái gì đó như thế này (http: //static.inky. ws/image/645/image.jpg). –

+0

cốt truyện đầu tiên tôi nhận được là với MATLAB, tôi muốn làm một cốt truyện tương tự với matplotlib. –

Các vấn đề liên quan