Bạn sử dụng gì để tạo bảng điều khiển trong R?


17

Tôi cần tạo báo cáo bảng điều khiển phân tích trang web định kỳ (hàng ngày, hàng tháng). Chúng sẽ tĩnh và không yêu cầu tương tác, vì vậy hãy tưởng tượng một tệp PDF là đầu ra đích. Các báo cáo sẽ trộn các bảng và biểu đồ (chủ yếu là biểu đồ tia lửa và biểu đồ dấu đầu dòng được tạo bằng ggplot2). Hãy nghĩ về bảng điều khiển kiểu Stephen Few / Perceptionual Edge, chẳng hạn như:bảng điều khiển mẫu

nhưng áp dụng cho phân tích trang web.

Bất kỳ đề xuất về các gói để sử dụng tạo các báo cáo bảng điều khiển này?

Trực giác đầu tiên của tôi là sử dụng R markdown và đan, nhưng có lẽ bạn đã tìm thấy một giải pháp tốt hơn. Tôi dường như không thể tìm thấy các ví dụ phong phú về bảng điều khiển được tạo từ R.


Tôi đề nghị thay thế untaggedtag với r, dashboards, reportshoặc tương đương.
Alexanderr Blekh

Bạn đã tạo bảng điều khiển này như mô tả ở trên? Tôi rất thích có một cái nhìn vào mã!
Kare

Câu trả lời:


15

Tôi nghĩ rằng đó Shinylà một sự quá mức trong tình huống này và không phù hợp với yêu cầu báo cáo bảng điều khiển của bạn là tĩnh . Tôi đoán rằng việc bạn sử dụng thuật ngữ "bảng điều khiển" hơi khó hiểu, vì một số người có thể cho rằng nó có sự nhấn mạnh hơn về tính tương tác ( bảng điều khiển thời gian thực ), thay vì bố cục thông tin , như cách hiểu của tôi (được xác nhận bởi " "yêu cầu tĩnh".

Lời khuyên của tôi cho bạn là sử dụng R Markdownđan , đặc biệt vì các gói này có đường cong học tập thấp hơn nhiều so với Shiny . Hơn nữa, gần đây tôi đã chạy qua một gói R, theo quan điểm của tôi, lý tưởng phù hợp với yêu cầu của bạn về việc nhúng các biểu đồ / lô nhỏ trong báo cáo, như được trình bày trên hình ảnh của bạn ở trên. Gói này tạo các bảng đồ họa tĩnh hoặc động và được gọi là sparkTable ( http://cran.r-project.org/web/packages/sparkTable ). Họa tiết của nó có sẵn ở đây (không có liên kết đến nó trên trang chủ của gói): http://publik.tuwien.ac.at/files/PubDat_228663.pdf . Nếu bạn cần một số tương tác ,sparkTablecung cấp một số thông qua giao diện đơn giản của nó để Shiny.


Tôi không biết về sparkTable, có vẻ như là một công cụ tuyệt vời cho công việc.
Shadowtalker

@ssdecontrol: Cho đến gần đây, tôi cũng không biết về nó. Trông giống như một công cụ tuyệt vời, chắc chắn. Tôi mong muốn thử nó trong dự án của tôi, nếu tôi sẽ có nhu cầu và cơ hội.
Alexanderr Blekh

9

Shiny là một khung để tạo các ứng dụng dựa trên HTML thực thi mã R một cách linh hoạt. Các ứng dụng Shiny có thể độc lập hoặc được tích hợp vào các tài liệu Markdown knitrvà phát triển Shiny được tích hợp hoàn toàn vào RStudio. Thậm chí còn có một dịch vụ miễn phí có tên Shinyapps.io để lưu trữ ứng dụng Shiny, shinygói có chức năng triển khai ứng dụng Shiny trực tiếp từ R và RStudio có giao diện GUI để gọi các chức năng đó. Có nhiều thông tin hơn trong phần Hướng dẫn của trang web.

Vì về cơ bản nó "biên dịch" toàn bộ thành JavaScript và HTML, bạn có thể sử dụng CSS để tự do thay đổi định dạng và bố cục, mặc dù Shiny có chức năng trình bao bọc phù hợp cho việc này. Nhưng điều đó chỉ xảy ra khi bảng màu mặc định của chúng tương tự như bảng màu trong ảnh chụp màn hình bạn đã đăng.

chỉnh sửa: Tôi chỉ nhận ra rằng bạn không cần họ phải năng động. Shiny vẫn làm cho các trang web trông rất đẹp mắt ra khỏi hộp, với rất nhiều tùy chọn để sắp xếp lại các yếu tố. Ngoài ra còn có chức năng tải xuống các ô, vì vậy bạn có thể tạo bảng điều khiển của mình mỗi tháng bằng cách chỉ cập nhật các tệp dữ liệu của mình trong ứng dụng và sau đó lưu hình ảnh kết quả vào PDF.



1

Tôi đã phải tạo một bảng điều khiển dựa trên web. Công cụ biểu đồ chính của tôi là d3js. Nhưng tôi cần sử dụng ggplot2 để tạo ra một vài biểu đồ. Thông qua phần mở rộng ggplot2 của d3js, tôi có thể tạo tương tự. Nếu biểu đồ của bạn có thể được tạo thông qua tiện ích mở rộng hiện có, thì web có các lựa chọn thay thế tốt hơn. Sau này bạn có thể xuất chúng sang PDF để phân phối.



1

Bạn có thể thử ShinyDashboard và bỏ qua mọi khía cạnh tương tác. Theo tôi, vẫn rất tốt khi cho phép người dùng phóng to các ô hoặc tìm kiếm các giá trị nhất định trong một cột. Shiny sẽ cho phép bạn làm điều này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.