Skip to main content

Visualize tabular data in CKAN

Project description

CI Coverage Gitter Pypi Python CKAN

ckanext-visualize

CKAN extension which allows users to visualize data in a very efficient and intuitive way, in a simple to use User Interface. The viewer automatically creates the most meaningful chart based on the chosen columns. Administrators can create predefined charts and easily configure them based on the needs.

Requirements

Compatibility with core CKAN versions:

CKAN version Compatible?
2.9 yes

Features

  • Intuitive and easy to use. This CKAN extension enables users to easily build and visualize charts that are simple to use.
  • Predefined charts. Administrators can create meaningful charts for users as CKAN views, so they can immediately visualize and understand the data.
  • Standalone chart viewer. The extension allows the chart viewer to be embedded on third-party websites without creating CKAN views.
  • Intelligent chart type selection. Depending on the data types of the columns that are chosen, the extension automatically chooses the most appropriate type to visualize the data.
  • Drag-and-drop columns. Creating a chart is as easy as dragging a column from the list of all available columns into the X or Y axis.
  • Color attribute. Data in the chart can be grouped based on the selected column and colored for each distinct value.
  • Visually distinct columns. All available columns that can be dragged are color coded based on the data type of the column and have a specific icon defined in a legend.
  • Chart types. The viewer supports the following types of chart: bar, line and point, with more coming in the next release.
  • Customizable color palette. The extension comes with a default color palette that is using carefully chosen colors that are accessible, with the possibility to change them and add additional ones from a configuration page.
  • Customizable chart type icons. For each supported chart type, there is a corresponding icon that can be customized from a configuration page.
  • Mobile support. Drag-and-drop functionality is supported on mobile devices as well.
  • Responsive. The extension is optimized to work across many screen sizes, from mobile to desktop.

Used technologies

  • HTML, CSS, Bootstrap, JavaScript, jQuery, Chart.js, SortableJS, Python

Screenshots

  • Predefined chart image

  • Intelligent chart type selection image

  • Drag-and-drop columns image

  • Color attributes image

  • Chart colors image

  • Data types image

  • Chart types image

  • Customizable color palette image

Installation

.. Add any additional install steps to the list below. For example installing any non-Python dependencies or adding any required config settings.

To install ckanext-visualize:

  1. Activate your CKAN virtual environment, for example:

    . /usr/lib/ckan/default/bin/activate

  2. Install the ckanext-visualize Python package into your virtual environment:

    pip install ckanext-visualize

  3. Add visualize to the ckan.plugins setting in your CKAN config file (by default the config file is located at /etc/ckan/default/production.ini).

  4. Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:

    sudo service apache2 reload

Development Installation

To install ckanext-visualize for development, activate your CKAN virtualenv and do:

git clone https://github.com/keitaroinc/ckanext-visualize.git
cd ckanext-visualize
python setup.py develop
pip install -r requirements.txt
pip install -r dev-requirements.txt

Running the Tests

To run the tests, do:

pytest --ckan-ini=test.ini

To run the tests and produce a coverage report, first make sure you have pytest-cov installed in your virtualenv (pip install pytest-cov) then run:

pytest --ckan-ini=test.ini  --cov=ckanext.visualize

Chart icons

The default icons that are used for the types of chart are taken from The R Graph Gallery.

Illustration

The illustration that is used is a modified version based on the open-source illustration from Katerina Limpitsouni.

Known issues

  • Performance. If a resource contains large data, e.g. more than 10000 rows, the viewer may be slower as it needs more time to prepare the data.
  • Internet Explorer. The HTML element <input type="color"> is not supported in Internet Explorer, therefore the color picker does not work in the administrator configuration page.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ckanext-visualize-1.0.0.tar.gz (292.8 kB view details)

Uploaded Source

Built Distribution

ckanext_visualize-1.0.0-py3-none-any.whl (302.2 kB view details)

Uploaded Python 3

File details

Details for the file ckanext-visualize-1.0.0.tar.gz.

File metadata

  • Download URL: ckanext-visualize-1.0.0.tar.gz
  • Upload date:
  • Size: 292.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for ckanext-visualize-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d2d4b56e845f39bf0ff5d44da2097f509f8fbda24db28a8ad1f3a417c3695bce
MD5 6d24fdf0a5da5f40c70ab70b1299af66
BLAKE2b-256 b070fb3fb5e0b6b6468a53cd0f69b1744b140528f9cdede5ac57489d6b2cfbbd

See more details on using hashes here.

File details

Details for the file ckanext_visualize-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ckanext_visualize-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 302.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for ckanext_visualize-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7d42be15ac40d26a1ebd7f58bcd1c8fda9c0771ae5ae01fb0151eb76a153123f
MD5 3ee1a12ed8ea9678b1dbf5294943093e
BLAKE2b-256 e640245db3a31208e907465a196faaa1aab0fb40fd075fc7e9ec88fc0c693855

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page