2013-08-11 37 views
7

Tôi đã vẽ đồ thị (sử dụng matplotlib) một chuỗi thời gian và các giới hạn khoảng tin cậy trên và dưới của nó (mà tôi đã tính trong Stata). Tôi đã sử dụng Pandas để đọc tệp đầu ra stata.csv và do đó, chuỗi là loại pandas.core.series.Series.Sử dụng fill_between() với một loạt dữ liệu Pandas

Matplotlib cho phép tôi vẽ đồ thị ba chuỗi này trên cùng một ô, nhưng tôi muốn tô bóng giữa các giới hạn tin cậy trên và dưới để tạo khoảng tin cậy trực quan. Thật không may tôi nhận được một lỗi, và bóng không hoạt động. Tôi nghĩ rằng đây là để làm với thực tế là các chức năng giữa mà tôi muốn điền là pandas.core.series.Series.

Bài đăng khác trên đây đề xuất rằng chuyển my_series.value thay vì my_series sẽ khắc phục sự cố này; tuy nhiên tôi không thể làm việc này được. Tôi thực sự đánh giá cao một ví dụ.

+0

Bạn có thể đính kèm một ví dụ về những gì có bạn đã hoàn thành cho đến nay, và bạn chính xác muốn đạt được điều gì? –

+1

Tôi đã xóa thẻ Stata. Đó là ngẫu nhiên cho câu hỏi của bạn rằng bạn đang âm mưu các kết quả tính toán trong Stata. Thẻ sẽ chỉ dẫn người Stata ở đây khi không có câu hỏi Stata để trả lời. Đảo ngược nếu bạn nghĩ nó chắc chắn sai. –

Trả lời

7

Chừng nào bạn không có NaN giá trị trong dữ liệu của bạn, bạn sẽ không sao:

In [78]: x = Series(linspace(0, 2 * pi, 10000)) 

In [79]: y = sin(x) 

In [80]: fill_between(x.values, y.min(), y.values, alpha=0.5) 

nào mang lại:

enter image description here

+0

Tôi khuyên bạn không nên sử dụng tên biến 'x' trong ngữ cảnh này, vì điều này có thể rất khó hiểu, xem cách trục hoành trong định hướng chuẩn cathesian được gọi là trục x (abscisse hoặc _first_ axis), trong khi bạn vẽ các giá trị 'x'-dọc theo trục dọc (trục phối cảnh hoặc trục _second_). Nó sẽ trực quan hơn để sử dụng tên biến 'y' ở đây, đặc biệt là vì matplotlib tuân theo quy ước của oritentaion carthesian tiêu chuẩn. – hooy

+0

Ký hiệu của tôi thấy sử dụng khá chuẩn trong xử lý tín hiệu và trong văn bản trên chuỗi thời gian. Tôi có thể hiểu khiếu nại của bạn nếu có một tấn biến nổi xung quanh, nhưng ví dụ của tôi đơn giản đến nỗi nó không thực sự quan trọng. [Bài viết wikipedia về chuỗi thời gian] (http://en.wikipedia.org/wiki/Time_series) cũng sử dụng ký pháp này. –

+0

Whoa, tôi đã không _complaining_ hoặc nói rằng đó là sai. Tôi biết rằng _x (t) _ là ký hiệu khá phổ biến, nhưng như vậy là _y (t) _. Tôi chỉ ra rằng 'x' như một tên biến được vẽ trên trục y có thể gây nhầm lẫn nói chung, đặc biệt khi OP có vẻ là mới đối với Python và matplotlib (cho tên người dùng của anh ta). – hooy

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