# Highcharts vs. ECharts vs. G2Plot
# License
Chart | License |
---|---|
Highcharts (opens new window) | 商业授权 (opens new window) |
ECharts (opens new window) | Apache License 2.0 (opens new window) |
G2Plot (opens new window) | MIT (opens new window) |
根据 Highcharts
的使用协议,非商业行为可以直接使用,商业行为需要购买授权。
# Highcharts的非商业行为
非商业使用,可以直接下载我们的软件并直接使用而不用取得我们的授权。
使用时请遵守 CC BY-NC 3.0 (Creative Commons Attribution-NonCommercial 3.0 License) 协议。
CC BY-NC 3.0 中文详情请参考:署名-非商业性使用 3.0 中国大陆 (CC BY-NC 3.0 CN) (opens new window)
- 学校
- 公益组织或非盈利机构
- 软件测试阶段
# Highcharts的商业授权种类
- 项目授权
- 开发者授权
- OEM授权
为此,我专门咨询了代理商关于授权价格的事情:
# 项目授权
使用场景:仅仅针对内部项目使用
报价:
# 开发者授权
使用场景:仅仅针对内部项目使用
报价:
人数 定价 1 7,900 元 5 31,600 元 10 55,000 元
需要注意的是,项目授权开发者授权区别在于可使用项目的数量:
- 相同点是,都只能用于公司内部项目,不能用于对外销售的情况;
- 不同点是,项目授权是针对一个项目,开发者授权可以用于多个项目
TIP

# OEM授权
OEM 授权是针对软件大批量(10份、100份、500份、1000份等)销售的情况。如果使用或包含我们的软件的产品用于大批量销售,则必须购买 OEM 授权。
OEM 授权的定价是由销售的产品的具体情况定价的,定价标准包括产品销售份数、产品定价、研发人员数量等。
- 使用场景:大规模对外销售
- 报价:
每个公司的定价应该是都不一样的,仅供参考。
# 数量较少的对外销售的项目
数量较少(10个以内),达不到批量的数量级,可以考虑给客户授权。 授权价格按照项目授权,可按数量给一定的优惠。
(OEM授权比单个项目授权是要便宜很多的 =.=)
另外,如果和别的公司合作,统一包装OEM,自己的公司购买授权即可。
# 框选操作
在实际使用中,我有一个框选的需求:
- 鼠标框选
- 获取框选中
x
轴的起止值时间 - 阻断内置默认的交互动作
- 根据起止时间做数据请求
- 重新渲染
Chart
我实际使用中发现,G2Plot
难于 ECharts
难于 Highcharts
。
# Highcharts
实现框选
直接使用 chart
-> events
-> selection
(opens new window)即可。
# ECharts
实现框选
也有相应的API
# G2Plot
实现框选
这里使用 G2Plot
的 React
版本:Ant Design Charts (opens new window)
这个稍微复杂些,需要自己定制框选行为,然后 registerInteraction
注册进去。
详细问题参考我在官方仓库下提的 如何框选? (opens new window)