GithubHelp home page GithubHelp logo

highcharts / highcharts Goto Github PK

View Code? Open in Web Editor NEW
11.8K 337.0 3.5K 341.77 MB

Highcharts JS, the JavaScript charting framework

Home Page: https://www.highcharts.com

License: Other

JavaScript 12.63% HTML 11.44% Shell 0.01% TypeScript 74.99% VBScript 0.01% CSS 0.93%

highcharts's Introduction

Highcharts JS is a JavaScript charting library based on SVG and some canvas/WebGL.

Highcharts is a source available product. Please refer to shop.highcharts.com for details on licensing.

Installing and using Highcharts

This is the working repo for Highcharts code. If you simply want to include Highcharts into a project, use the distribution package instead, or read the download page.

Please note that there are several ways to use Highcharts. For general installation instructions, see the docs.

Use our CDN

Instead of downloading, you can use our CDN to access files directly. See code.highcharts.com for details.

<script src="https://code.highcharts.com/highcharts.js"></script>

Install from npm

See npm documentation on how to get started with npm.

npm install --save highcharts

ES6 modules, AMD, CommonJS and others

For other ways to use Highcharts in your projects, please refer to our installation docs.

Create your own custom build of Highcharts

To reduce file size, or combine modules into one file to reduce latency, you may want to create your own build of the Highcharts modules. See Creating custom Highcharts files for more information.

Build and debug

If you want to do modifications to Highcharts or fix issues, you may build your own files. Highcharts uses Gulp as the build system. After npm install in the root folder, run gulp, which will set up a watch task for the JavaScript and CSS files. Now any changes in the files of the /js or /css folders will result in new files being built and saved in the code folder. Other tasks are also available, like gulp lint.

npm install
gulp

Node setup for Apple Mx CPU

When running Node natively on ARM64 MacOS, some Node packages like node-canvas with integrated compiling might fail. Install additional tools to resolve the problem:

  • Homebrew and run brew install pkg-config cairo pango libpng jpeg giflib librsvg pixman

Generate API docs

Run in this highcharts repository the doc generator with npx gulp jsdoc-watch, which also starts a new server with the generated API documentation.

highcharts's People

Contributors

activist avatar andreastistel avatar bm64 avatar bre1470 avatar cvasseng avatar denyllon avatar djtechnoo avatar goransle avatar hubertkozik avatar izothep avatar jomar-honsi avatar jon-a-nygaard avatar jszuminski avatar kamil-musialowski avatar karolkolodziej avatar khlieng avatar madepiet avatar markusbarstad avatar marvin19 avatar nasin avatar oysteinmoseng avatar pawelfus avatar pawellysy avatar raf18seb avatar sebastianbochan avatar sigrunnu avatar slawekkolodziej avatar torsteinhonsi avatar vazonik avatar wchmiel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

highcharts's Issues

Performance decreases quadratically on increasing number of scatter points

User report:
I need to make a scatterplot with 20000 points and found out, that sorting the zIndex around line 1530 of highcharts.src.js Version 2 takes quadratically increasing more time.
On FF 500 - 2000 points are a little bit slow, but with 4000 or 8000 it takes minutes! And over 10.000 did surpas my patience...

I can do 20.000 points conveniently now, if I comment out the code section before
parentNode.appendChild(this.element);

I didnt see any drawback from commenting the zIndex section. Only the Series in the legend is not visible, which ist easily resolved by setting
legendBorderWith and legendBackground to false.

Proposition:
Maybe you could instead of looping ALL children of the SVG - Graph memorize the elements, which contain a zIndex and just iterate them. This would increase performance on high density plots enormously without loosing the zIndex!

Comment:
Loading a scatter chart with 4000 points takes 20 seconds in Firefox. By removing the zIndex logic, it is reduced to 1.2 second.

Demo: http://highcharts.com/studies/performance.php?seriesType=scatter&chartCount=1&seriesPerChart=1&pointsPerSeries=4000&chartWidth=500&libSource=highcharts.src.js

Point hover mis-located when series hidden with legend

When you disable a series that causes the graph to adjust its axis extremes, the hovers for the remaining series are not relocating to reflect the new scale (ignoreHiddenSeries must be set to true). Instead, hover is located where the point should be when all series are showing.

Better drop mouse handling

Instead of dropping a selection on mouse out of the chart, apply a global event listener for mouse up.

Formatter hyperlink support

We need the ability to format axis labels as hyperlinks so that we can update the application state. Currently it appears that when adding a hyperlink to the formatter output it is stripped out somewhere along the way in the 2.0-prerelease and does not show the axis labels as we would have expected.

http://jsfiddle.net/Q3AGU/23/

setExtremes bug

Setting the Y-axis extremes to values (2,12) beyond the original extremes (0,10) seems to re-adjust the extremes to new automatically calculated values. However, setting the min/max padding to 0 seems to resolve this problem and set the extremes to the passed values (2,12). Is there any way to achieve this result without setting the min/max padding to 0.

http://jsfiddle.net/Lru74/

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.