Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use charts libary that allows commercial use instead of highcharts.js #425

Closed
LilithWittmann opened this issue Sep 18, 2015 · 8 comments
Closed

Comments

@LilithWittmann
Copy link
Contributor

I know highcharts.js is really cool but doesn't allow commercial use in the cost-free version. The highcharts.js license faq says:

IF I AM USING THE SOFTWARE ON A COMMERCIAL COMPANY'S INTRANET, DOES IT REQUIRE A LICENSE
Yes. The Developers License allows you to install and use the software on commercial company's intranet.

So every company that wants to use airflow has to pay 390$ for a highchart developer license?
Maybe it would be an option to replace highcharts with chart.js or d3.js?

@neovintage
Copy link
Contributor

I would recommend http://metricsgraphicsjs.org/ for this. The mozilla license is a bit more favorable.

@mistercrunch
Copy link
Member

It looks like Highchart's definition of "non-commercial" isn't what I though it was. I'm not even sure it's in line with the creative commons specs. We also might be able to get a blessing from them, though it might just be easier to rip it out.

I've used this lib before: http://nvd3.org/

@LilithWittmann
Copy link
Contributor Author

Ok I will try to replace highcharts with one of these libraries (and maybe refactor the javascript part a bit ;-) )

@mistercrunch
Copy link
Member

Oh wow! that is ambitious. Sorry about my javascript :)

@LilithWittmann
Copy link
Contributor Author

Ok, I (re)implemented some of the chart types:

  • line
  • bar (grouped, stacked)
  • column (grouped, stacked)
  • stacked area (stacked, stream, expanded)

but I have no idea how to implement the others (esp. heatmap and parallel coordinates) with nvd3 /o
You can find my branch here: https://github.com/LilithWittmann/airflow/tree/new_chart_libary

@mistercrunch
Copy link
Member

Nice!

Parallel coordinate is one of those d3 examples, the license looks ok there. For heatmap we can probably just remove the feature.

Now there's a few views in the application itself (landing times and duration charts). The Gantt chart might be a git more tricky but it isn't too hard to reproduce while hacking a line chart. I'm hoping I can get to this sometime next week.

@mistercrunch
Copy link
Member

I pulled the branch and opened a dozen of charts on my end and only a few actually worked. I'll have to dig in and do some work to make this work.

@bolkedebruin
Copy link
Contributor

d3 implementation is underway also as requirement to do apache releases.

mobuchowski added a commit to mobuchowski/airflow that referenced this issue Jan 4, 2022
…ge URL (apache#425)

* Support Arbitrary Parameters in Lineage URL

Supports extracting parameters from config: spark.openlineage.url
Supports extracting parameters from config: spark.openlineage.url.param.xxx

Users can now pass along additional query / url parameters to the
openlineage url that is used when emitting lineage. This is useful for
passing additional parameters necessary for a non-marquez destination
of OpenLineage metadata.

If using spark.openlineage.url.param.xxx, xxx represents the name of
the url parameter you want to include in the lineage url. Any
configuration variable passed in beginning with spark.openlineage.url.param.
will be used as a url parameter in the lineage url.

These config settings will ignore api_key if it is specified as a url.param
to avoid conflicting with the spark.openlineage.apiKey config.

Signed-off-by: Will Johnson <[email protected]>

* Adding more idiomatic Java syntax

Signed-off-by: Will Johnson <[email protected]>

* Even more idiomatic java 8 syntax

Signed-off-by: Will Johnson <[email protected]>

* [spark] support read/write to kafka (apache#387)

* adding initial test for spark kafka integration (apache#279)

* adding initial test for spark kafka integration

Signed-off-by: tomassatka <[email protected]>

* [spark] Resolves: apache#280 kafka support

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#280 kafka support

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#280 remove debug line

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#280 javadoc

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#280 review

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#280 review

Signed-off-by: olek <[email protected]>

* Moved KafkaWriter handling into KafkaRelationVisitor and added support for assign in kafka consumer parsing

Signed-off-by: Michael Collado <[email protected]>

* Add check for hive classes to avoid NoClassDefFoundErrors

Signed-off-by: Michael Collado <[email protected]>

* Fix build for kafka integration (apache#411)

* Fix integration tests step to run on raw machine to enable docker tests

Signed-off-by: Michael Collado <[email protected]>

* Updated kafka tests to use common version and common reference to kafka package

Signed-off-by: Michael Collado <[email protected]>

* Added reset() call to mock server to avoid results across tests

Signed-off-by: Michael Collado <[email protected]>

* Added String only constructor to HttpError

Signed-off-by: Michael Collado <[email protected]>

* Changed build to copy dependencies and use downloaded jars in Spark containers

Signed-off-by: Michael Collado <[email protected]>

* Fix spark integration test build to use explicit 3.1.2 version

Signed-off-by: Michael Collado <[email protected]>

Co-authored-by: Tomas Satka <[email protected]>
Co-authored-by: Michael Collado <[email protected]>
Co-authored-by: Michael Collado <[email protected]>
Signed-off-by: Will Johnson <[email protected]>

* dbt: support dbt build command (apache#398)

Signed-off-by: Maciej Obuchowski <[email protected]>
Signed-off-by: Will Johnson <[email protected]>

* great expectations: pin version to the one supported by airflow operator (apache#420)

Signed-off-by: Maciej Obuchowski <[email protected]>
Signed-off-by: Will Johnson <[email protected]>

* [SPARK] adding output metrics (apache#361)

* [spark] Resolves: apache#304 adding task metrics collector

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 remove OutputDatasetWithMetadataVisitor.java and deprecated "OutputStatisticsFacet.java"

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 add entry in CHANGELOG.md

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 add test and fix test

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 fix test

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 review comments

Signed-off-by: olek <[email protected]>

* [spark] Resolves: apache#304 review comments

Signed-off-by: olek <[email protected]>

* Fix references to JobMetricsHolder to use singleton, default metric values to null if not present

Signed-off-by: Michael Collado <[email protected]>

Co-authored-by: Michael Collado <[email protected]>
Signed-off-by: Will Johnson <[email protected]>

* dbt: filter non-test nodes while processing assertions (apache#422)

Signed-off-by: Maciej Obuchowski <[email protected]>
Signed-off-by: Will Johnson <[email protected]>

* Updating OpenLineage spark integration README with new param

Signed-off-by: Will Johnson <[email protected]>

* Fixing spotless checks

Signed-off-by: Will Johnson <[email protected]>

Co-authored-by: OleksandrDvornik <[email protected]>
Co-authored-by: Tomas Satka <[email protected]>
Co-authored-by: Michael Collado <[email protected]>
Co-authored-by: Michael Collado <[email protected]>
Co-authored-by: Maciej Obuchowski <[email protected]>
@Lee-W Lee-W mentioned this issue Oct 9, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants