Helpex - Trao đổi & giúp đỡ Đăng nhập

Hình ảnh hóa D3.js Sử dụng YAML và Jekyll

Tôi ngày càng sử dụng D3.js như một phần trong quá trình kể chuyện của mình. Vì tất cả các trang web của tôi chạy bằng Jekyll và được xuất bản hoàn toàn bằng cách sử dụng kho Github sẽ được chia sẻ dưới dạng các trang Github Page, nên việc chuẩn hóa cách tôi xuất bản các hình ảnh trực quan của mình là rất hợp lý.

Jekyll cung cấp vô số công cụ quản lý dữ liệu, bao gồm khả năng quản lý các cửa hàng YAML dta trong thư mục _data. Một cách tiếp cận mà tôi cảm thấy chưa hiểu rõ và thiếu các ví dụ thực tế về cách sử dụng khi quản lý dữ liệu mở - tôi đang tìm cách thay đổi điều đó.

Tôi thích hình ảnh hóa dữ liệu của mình đẹp, năng động, với dữ liệu ở ngay phía sau - khiến D3.js trở thành lựa chọn hiển nhiên. Đối với công việc này, tôi đã lấy dữ liệu để sử dụng dưới dạng biểu đồ thanh và hình tròn và xuất bản dưới dạng YAML vào thư mục _data kho lưu trữ Github này. Theo tôi, cách tiếp cận này để lưu trữ tập trung dữ liệu có thể đọc được bằng máy, ở định dạng YAML đơn giản, dễ đọc hơn, làm cho dữ liệu đằng sau hình ảnh hóa dễ tiếp cận hơn nhiều theo quan điểm của tôi.

Vấn đề với việc sử dụng trực quan hóa D3.js là tôi cần nó ở định dạng JSON. Rất may, sử dụng Jekyll và Liquid, tôi có thể dễ dàng thiết lập các phiên bản động của dữ liệu của mình ở định dạng JSON, XML hoặc bất kỳ định dạng nào khác mà tôi cần. Tôi đặt các trang JSON này trong một thư mục riêng biệt mà tôi chỉ gọi / data.

Bây giờ tôi có JSON mà tôi cần để cung cấp năng lượng cho các hình ảnh hóa D3.js của mình. Để chia sẻ hình ảnh thực tế, tôi đã tạo các phiên bản riêng biệt cho biểu đồ thanh và biểu đồ tròn của mình, đồng thời có HTML, CSS và JavaScript cho mỗi biểu đồ, trong tệp riêng của nó.

Có hai điều đang được hoàn thành ở đây. 1) Tôi đang tách nguồn dữ liệu theo cách giúp dễ dàng hoán đổi giữa các hình ảnh trực quan D3.js khác nhau và 2) Tôi đang tập trung hóa việc quản lý dữ liệu, giúp nó dễ dàng được quản lý bởi ngay cả một nhà điều hành không chuyên về kỹ thuật, những người chỉ cần nắm được cách hoạt động của Jekyll và YAML - điều này làm giảm đáng kể các rào cản đối với việc quản lý dữ liệu cần thiết cho hình dung.

Chắc chắn có một đường cong học tập liên quan. Jekyll, Github Pages và YAML cần một chút thời gian để hấp thụ, nhưng khả năng xử lý ngược của phương pháp này cho phép chính nó sử dụng và làm lại bởi bất kỳ người tò mò dữ liệu nào không sợ Github. Tôi hy vọng sẽ tiếp tục xuất bản bất kỳ hình ảnh hóa D3.js mới nào mà tôi tạo theo cách này, để cung cấp các hình ảnh hóa nhỏ, có thể phân nhánh, theo hướng dữ liệu có thể được sử dụng như một phần của nỗ lực kể chuyện dữ liệu - mọi thứ ở đây đều có sẵn dưới dạng repo công khai .

Là một chuyên gia dữ liệu 25 năm kinh nghiệm, tôi thấy mình rất hấp dẫn với tiềm năng của Jekyll như một giải pháp quản lý dữ liệu, một thứ mà khi bạn kết hợp với các lợi ích mã hóa xã hội của Github và Github Pages, có thể giải phóng khả năng không giới hạn . Tôi sẽ tiếp tục làm việc để xác định các ví dụ mô-đun nhỏ về cách thực hiện điều này và xuất bản dưới dạng các bài học Github riêng lẻ để bạn phân nhánh và học hỏi.

17 hữu ích 0 bình luận 7.2k xem chia sẻ

Có thể bạn quan tâm

loading