All Projects β†’ statnett β†’ Vue Plotly

statnett / Vue Plotly

Licence: mit
A vue wrapper for plotly.js chart library

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Vue Plotly

Scala Plotly Client
Visualise your data from Scala using Plotly
Stars: ✭ 39 (-64.22%)
Mutual labels:  graph, plotly
Ig Follow Count
πŸ“ˆ A simple Instagram analytics tool that continuously logs and graphs your follower count.
Stars: ✭ 35 (-67.89%)
Mutual labels:  graph, plotly
Mini Graph Card
Minimalistic graph card for Home Assistant Lovelace UI
Stars: ✭ 1,370 (+1156.88%)
Mutual labels:  graph
Typescript
Algebraic graphs implementation in TypeScript
Stars: ✭ 107 (-1.83%)
Mutual labels:  graph
Dijkstra
Fastest golang Dijkstra path finder
Stars: ✭ 107 (-1.83%)
Mutual labels:  graph
Grawkit
The Awksome Git Graph Generator
Stars: ✭ 101 (-7.34%)
Mutual labels:  graph
Hiitpi
A workout trainer Dash/Flask app that helps track your HIIT workouts by analyzing real-time video streaming from your sweet Pi using machine learning and Edge TPU..
Stars: ✭ 106 (-2.75%)
Mutual labels:  plotly
Covid19 Dashboard
🦠 Django + Plotly Coronavirus dashboard. Powerful data driven Python web-app, with an awesome UI. Contributions welcomed! Featured on πŸ•ΆAwesome-list
Stars: ✭ 100 (-8.26%)
Mutual labels:  plotly
Walk
A fast, general purpose, graph based build and task execution utility.
Stars: ✭ 108 (-0.92%)
Mutual labels:  graph
Rdflib
RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information.
Stars: ✭ 1,584 (+1353.21%)
Mutual labels:  graph
Py Ascii Graph
A simple python lib to print data as ascii histograms
Stars: ✭ 107 (-1.83%)
Mutual labels:  graph
Clj Xchart
XChart wrapper for Clojure
Stars: ✭ 105 (-3.67%)
Mutual labels:  graph
Grest
Build REST APIs with Neo4j and Flask, as quickly as possible!
Stars: ✭ 102 (-6.42%)
Mutual labels:  graph
Workbase
Grakn Workbase (Knowledge IDE)
Stars: ✭ 106 (-2.75%)
Mutual labels:  graph
Sdf Ui
WebGL node editor for Signed Distance Functions
Stars: ✭ 101 (-7.34%)
Mutual labels:  graph
Protodot
transforming your .proto files into .dot files (and .svg, .png if you happen to have graphviz installed)
Stars: ✭ 107 (-1.83%)
Mutual labels:  graph
Node Sonic Channel
πŸ¦‰ Sonic Channel integration for Node. Used in pair with Sonic, the fast, lightweight and schema-less search backend.
Stars: ✭ 101 (-7.34%)
Mutual labels:  graph
Sortinganimation
A visual representation for sorting algorithms
Stars: ✭ 105 (-3.67%)
Mutual labels:  graph
Buckets Swift
Swift Collection Data Structures Library
Stars: ✭ 106 (-2.75%)
Mutual labels:  graph
Diagrammer
Graph and network visualization using tabular data in R.
Stars: ✭ 1,497 (+1273.39%)
Mutual labels:  graph

vue-plotly Build Status Coverage Status

Install

npm install @statnett/vue-plotly plotly.js --save

Then use it as a module:

import VuePlotly from '@statnett/vue-plotly'

export default {
  components: {
    VuePlotly
  },
  data: function () {
    return {
      data: [{ x: [1, 3], y: [2, 4] }],
      layout: {},
      options: {}
    }
  }
}
<vue-plotly :data="data" :layout="layout" :options="options"/>

Webpack

To use vue-plotly with webpack you should see this example repo for how to make that work.

In short, install ify-loader and transform-loader and add the following to your webpack config:

module: {
  rules: [
    {
      test: /\.js$/,
      use: [
        'ify-loader',
        'transform-loader?plotly.js/tasks/util/compress_attributes.js',
      ]
    }
  ]
}

https://plot.ly/javascript/getting-started/#start-plotting might also be relevant.

Browser

The browser UMD build is located in the dist folder.

Props

The component supports the following props:

  • data

    The traces to draw. Will trigger a call to react when changed.

  • layout

    The layout options. Will trigger a relayout when changed.

  • options

    The general options https://github.com/plotly/plotly.js/blob/master/src/plot_api/plot_config.js

  • autoResize (default: false, not reactive)

    If true, the graph resizes when the window is resized.

  • watchShallow (default: false, not reactive)

    If true, does not trigger a redraw when child properties of data changes, but not the data object itself. Might be needed for large datasets.

Events

All plotly events are captured and emitted as vue events. The names are without the plotly_ prefix. The following events are supported:

click, hover, unhover, selecting, selected, restyle, relayout, autosize, deselect, doubleclick, redraw, animated

Function reference

All functions defined by plotly are available as methods on the component. However it is not recommendable to call most of these manually since it is better to change the reactive properties on the data, layout or options directly, This will in turn trigger an update to the graph. If you do call these manually, the graph data and the props data might not be in sync.

For certain scenarios though it, like downloading an image, you need to call these functions. You call the functions as you would normally, but without the first argument, the DOM element.

The following functions are exposed:

restyle, relayout, update, addTraces, deleteTraces, moveTraces, extendTraces, prependTraces, purge, toImage, downloadImage, plot, newPlot

Some have special handling:

  • toImage

Has default png format, and graph width and height pre filled, this can be overridden.

  • downloadImage

Has default png format, and graph width and height pre filled. Filename is set to the title of the graph and with a date postfix. These can all be overridden.

  • plot

Deprecated: https://plot.ly/javascript/plotlyjs-function-reference/#plotlyplot

Accepts no arguments. Uses data, layout and options from the props data.

  • newPlot

Accepts no arguments. Uses data, layout and options from the props data.

  • react

Accepts no arguments. Uses data, layout and options from the props data.

Read more about plotlyjs function reference here: https://plot.ly/javascript/plotlyjs-function-reference/

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].