You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zeppelin.apache.org by rockiey <gi...@git.apache.org> on 2016/08/03 21:55:02 UTC
[GitHub] zeppelin pull request #1276: Add Highcharts support
GitHub user rockiey opened a pull request:
https://github.com/apache/zeppelin/pull/1276
Add Highcharts support
### What is this PR for?
Add Highcharts support to let Zeppelin users easily plot Spark DataFrame with Highcharts.
### What type of PR is it?
Feature
### Todos
### What is the Jira issue?
[ZEPPELIN-1285] - Add Highcharts support to Zeppelin
### How should this be tested?
Add following code to a notebook an execute it. An area graph show be ploted
%spark
import com.knockdata.zeppelin.highcharts._
import com.knockdata.zeppelin.highcharts.model._
import sqlContext.implicits._
val USA = Seq(0, 0, 0, 0, 0, 6, 11, 32, 110, 235, 369, 640,
1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126,
27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662,
26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605,
24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586,
22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950,
10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104)
.zip(1940 to 2006).map(p => ("USA", p._1, p._2))
val USSR = Seq(0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322,
4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478,
15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049,
33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000,
35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000,
21000, 20000, 19000, 18000, 18000, 17000, 16000)
.zip(1940 to 2006).map(p => ("USSR/Russia", p._1, p._2))
val dataFrame = (USA ++ USSR).toDF("country", "stockpile", "year")
highcharts(dataFrame)
.chart(new Chart("area"))
.seriesCol("country")
.series("x" -> "year", "y" -> "stockpile")
.orderBy(col("year"))
.plot()
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update?
Additional note shall be added if users use Highcharts.
* Is there breaking changes for older versions?
No
* Does this needs documentation?
In the download page, description shall be add if user use Highcharts.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/rockiey/zeppelin master
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/zeppelin/pull/1276.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1276
----
commit 3e3263760d18732bfccb4cb99d660a2b97eea7d9
Author: Rockie Yang <ey...@gmail.com>
Date: 2016-08-03T21:23:50Z
Add Highcharts support
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin issue #1276: Add Highcharts support
Posted by bzz <gi...@git.apache.org>.
Github user bzz commented on the issue:
https://github.com/apache/zeppelin/pull/1276
@rockiey thank you for contributing!
Highcharts is a great library, but I belive it will be hard to include it as a dependency to ASF project.
If highchart gets included to project codebase, it will end up in convenience release binary the project that is distributed by ASF, so we must make sure that it's license complies with legal requirements from Apache Software Foundation.
Here is a process that needs to be done, in order to archive the compliance:
- verify that it's license belongs to ASF [category-a](http://www.apache.org/legal/resolved.html#category-a) license, if that is the case - it can be included as dependency. Then
- full text of the license must be included in the `zeppelin-distribution/src/bin_license/licenses`, then
- record must be added to `zeppelin-distribution/src/bin_license/LICENSE`
- copyrights notice, in case it exists needs to be recorded in `zeppelin-distribution/src/bin_license/NOTICE`
Looking at https://github.com/knockdata/zeppelin-highcharts - it looks great and it does acutally make a lot of sence to have it as separate binary, so that user can add it at his own will (and be responsible for adhering it's licence terms).
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin pull request #1276: Add Highcharts support
Posted by rockiey <gi...@git.apache.org>.
Github user rockiey closed the pull request at:
https://github.com/apache/zeppelin/pull/1276
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin issue #1276: Add Highcharts support
Posted by rockiey <gi...@git.apache.org>.
Github user rockiey commented on the issue:
https://github.com/apache/zeppelin/pull/1276
@bzz Thanks very much for clarification. So this PR shall be closed?
I will check the Helium framework.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin issue #1276: Add Highcharts support
Posted by Leemoonsoo <gi...@git.apache.org>.
Github user Leemoonsoo commented on the issue:
https://github.com/apache/zeppelin/pull/1276
fyi, now zeppelin-0.7.0 enables pluggable visualization. 0.8.0 (snapshot) even supports online registry for the package. http://zeppelin.apache.org/helium_packages.html
There're some highchart package in the registry already. That might give some idea how to add high chart.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin issue #1276: Add Highcharts support
Posted by bzz <gi...@git.apache.org>.
Github user bzz commented on the issue:
https://github.com/apache/zeppelin/pull/1276
Yes, I think it's better to close this and resolve the JIRA issue. And then create a new one for Helium App and post a link it here. This work will still be accessible so people who are interested in it as well could join efforts with you and build a great app.
Thanks and please do not hesitate to ask questions on Helium on the dev mailing list!
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] zeppelin issue #1276: Add Highcharts support
Posted by bzz <gi...@git.apache.org>.
Github user bzz commented on the issue:
https://github.com/apache/zeppelin/pull/1276
@rockiey I have just updated the comment above.
What I would suggest is - please take a look at [Helium framework](https://github.com/apache/zeppelin/tree/master/zeppelin-interpreter/src/main/java/org/apache/zeppelin/helium) inside Apache Zeppelin.
It is under development right now, here are some [materials](https://cwiki.apache.org/confluence/display/ZEPPELIN/Helium+proposal) that [might help](http://www.slideshare.net/HadoopSummit/apache-zeppelin-helium-and-beyond) to understand it better.
It is possible to wrap your work as a Helium Application and distribute it outside of ASF codebase, but user will still be able to get easy access to it (and benefit from the awesomeness of highchart at his own risk)
This better be done in a separate PR. Let me know what you think!
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---