2012-08-28 43 views
5

enter image description hereĐề xuất về vẽ biểu đồ

Tôi cần vẽ biểu đồ như biểu đồ được hiển thị ở trên trong đơn đăng ký của tôi. Các giá trị cho trục Y được cập nhật định kỳ thu được từ một thiết bị điện tử và trục X là thời gian trôi qua. Theo mặc định, phạm vi xem của trục X được cập nhật tự động (mở rộng theo chiều ngang) thành giây trôi qua.

Một điều tôi thấy khá khó khăn ngay lập tức, là người dùng cũng có thể tự đặt phạm vi trục X và Y, vì vậy tôi cần phải tìm ra cách linh hoạt để xử lý phần đó.

Tôi có thể nhận một số đề xuất về việc xử lý các yêu cầu trên không? Tôi thích WPF nhưng Winforms cũng tốt. Có bất kỳ dự án ví dụ nào giải quyết vấn đề tương tự như trên không? Hoặc bất kỳ dll nào của bên thứ ba mà tôi có thể sử dụng (vì mục đích thương mại)?

+1

Tôi đề nghị bạn sử dụng một điều khiển biểu đồ sẵn sàng thực hiện như một từ DevExpress: http://demos.devexpress.com/XtraChartsDemos/ –

+0

Nếu bạn muốn đi WPF bài viết này có thể bạn quan tâm: http: // msdn. microsoft.com/en-us/magazine/dd483292.aspx (nhưng vẫn, +1 cho những gì Daniel Hilgarth đã nói) – franssu

+0

Có một ví dụ về biểu đồ thời gian thực với các thành phần biểu đồ của Microsoft tại đây: http://msdn.microsoft.com/vi -us/library/hh297119% 28v = vs.100% 29.aspx (snag là nó trong F # vì vậy tôi sẽ xem nếu tôi có thể đào ra một phiên bản C# cho bạn). Họ giao hàng miễn phí với .Net 4 vì vậy có thể đáng khám phá việc sử dụng của họ - các điều khiển biểu đồ DevExpress là tốt, nhưng không miễn phí. – dash

Trả lời

3

Một cách tôi đang xem xét chuyển sang ngay bây giờ chỉ đơn giản là nhúng một điều khiển web dưới bất kỳ loại ứng dụng (WinForms, WPF) và sau đó sử dụng html/javascript để vẽ biểu đồ bằng thư viện mã nguồn mở như: flotr2, Style Chart, jqPlot, ProtovisD3. Lợi ích của việc làm theo cách này là nếu bạn quyết định thay đổi nền tảng, đồ thị của bạn không cần phải thay đổi.

Hiện tại tôi đang sử dụng Dynamic Data Display, thư viện vẽ đồ thị WPF.

1

winforms:

.NET3.5 trở đi đã kiểm soát biểu đồ được xây dựng trong (tôi nghĩ)

Im mới này quá nhưng bạn phải tạo ra sự kiểm soát biểu đồ và sau đó tạo ra một đối tượng series với các dữ liệu . Sau đó, cập nhật điều khiển biểu đồ với chuỗi chứa dữ liệu của bạn.

Có một dự án mẫu ở đây:

http://archive.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=4418

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