GithubHelp home page GithubHelp logo

isabella232 / reactochart Goto Github PK

View Code? Open in Web Editor NEW

This project forked from spotify/reactochart

0.0 0.0 0.0 109.24 MB

:chart_with_upwards_trend: React chart component library :chart_with_downwards_trend:

Home Page: https://spotify.github.io/reactochart/docs/

License: Other

HTML 0.03% JavaScript 99.48% Less 0.39% EJS 0.10%

reactochart's Introduction

version build

Reactochart

Overview

Greenkeeper badge

Reactochart is a library of React components for creating data visualization charts and graphs. Components include line chart, bar chart, area chart, heat maps, scatterplot, histogram, pie chart, sankey diagram, and tree map.

Getting started

  1. Install reactochart using npm.
npm i reactochart --save
  1. Then you can import an individual Reactochart component:
import LineChart from 'reactochart/LineChart';
  1. If you prefer, you can import all of Reactochart at once, though this may hinder some optimizations, such as webpack tree-shaking:
import { XYPlot, XAxis, YAxis, LineChart } from 'reactochart';

or

import * as Reactochart from 'reactochart';
  1. Import reactochart's base styles
import 'reactochart/styles.css';
  1. Build your first chart and see it rendered! For example, the following code snippet:
import XYPlot from 'reactochart/XYPlot';
import XAxis from 'reactochart/XAxis';
import YAxis from 'reactochart/YAxis';
import LineChart from 'reactochart/LineChart';
import 'reactochart/styles.css';

const MyFirstLineChart = props => (
  <XYPlot>
    <XAxis title="Phase" />
    <YAxis title="Intensity" />
    <LineChart
      data={Array(100)
        .fill()
        .map((e, i) => i + 1)}
      x={d => d}
      y={d => Math.sin(d * 0.1)}
    />
  </XYPlot>
);

results in this:

Live Examples

The examples contain more details about each component and the prop-types it accepts. To run the examples locally and play with the different types of charts in a live code editor:

  1. Clone this repo and cd to the newly-created directory
  2. Run npm run serve in your terminal (note: if you're running Python in v3 or higher you'll need to run python -m http.server)
  3. Go to http://localhost:8000

Reactochart Components

Chart Foundations

XY Plot

XY Axis Components

Chart Types

Non-XY charts

XY charts

XY datum components (used by charts/axes)

Other

Development

If you'd like to contribute to the development this project, first fork & clone this repo, and then follow these steps:

Global dependencies

  • This project uses NPM to manage dependencies and run scripts. Run npm -v to check if you already have it installed. If you don't have it, NPM is packaged with Node.js - download and run the install package located on nodejs.org to install.
  • Babel is used to transpile ES6+ code to ES5 syntax. Install by running npm install --global babel
  • Webpack is used to bundle the JS & styles for the examples. Install by running npm install --global webpack

Project dependencies

  • Run npm install in the project root directory. This will install all of the project dependencies into the node_modules directory.

Development process

  • Run npm run dev to run the development server (webpack-dev-server), which will serve a live development version of the examples at localhost:9876.
  • Make changes to the library code in the src directory, and/or changes to the examples in the examples/src directory.
  • If you'd like to make changes or add further component documentation, follow the example on react-docgen.
  • Once you're happy with your library and/or documentation changes, run npm run docs. This allows the documentation build to run with your updated src code. git add and git commit the updated build.
  • git push to your forked version of the repo.
  • Open a Github pull request with your changes against master. ๐ŸŽ‰

NPM Link

If you have an app that depends on reactochart and you want to develop locally, follow the following steps:

  1. In the folder for this repo, run npm build and then npm link
  2. In your app folder, run npm link reactochart. If you're using webpack, then you also may need the following config:
{
  "resolve": {
    "symlinks": true,
    "alias": {
      "react": path.resolve("./node_modules/react"),
      "react-dom": path.resolve("./node_modules/react-dom")
    }
  }
}

Notes

  • Do not make any changes in the lib or examples/build directories, as these directories are destroyed and regenerated on each build.
  • The development server uses react-hot-loader to automatically "hot reload" changes to React components, so refreshing your web browser is not necessary.

Code of Conduct

This project adheres to the Open Code of Conduct. By participating, you are expected to honor this code.

reactochart's People

Contributors

acmei avatar arackaf avatar cloudonshore avatar dandelany avatar dependabot[bot] avatar dgdblank avatar ekh64 avatar greenkeeper[bot] avatar ianjmacintosh avatar iezer avatar joeporpeglia avatar jonchretien avatar joshbdev avatar jrydberg avatar krissalvador27 avatar mbonaci avatar mindyuan avatar mptap avatar philippg777 avatar pmilla1606 avatar prttmprpht avatar rdil avatar rpjs avatar scottsheffield avatar siezerp avatar tanayv avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.