HIGHCHARTS
  • 关于我们
    • 关于我们
    • 联系方式
    • 新闻动态
    • 合作伙伴
  • 在线商店
  • 在线实例
    • Highcharts 演示
    • Highcharts Stock 演示
    • Highcharts Maps 演示
    • Highcharts Gantt 演示
    • 图集new
    • 客户案例
  • 文档教程
    • 使用教程
    • API 文档
    • 兼容性
    • 常见错误
    • 更新日志
  • 服务与支持
    • 获取技术支持
    • 下载中心
    • 地图数据
    • 产品规划
  • 产品中心
    • Highcharts
    • Highcharts Stock
    • Highcharts Map
    • Highcharts iOS
    • Highcharts Android
    • JShare
    • 爱图说
    • Highcharts 云服务
    • Highcharts 编辑器
    • 插件扩展
    • 应用扩展
  • 博客
  • 技术社区
  • 快速上手
    • Highcharts 系列软件简介
    • 1 分钟上手 Highcharts
    • 文件下载与使用
    • 通过 npm 安装
    • 通过 Bower 安装
    • 如何设置图表配置选项
    • Highcharts 兼容性
    • Highcharts 使用协议
  • 基础教程
    • 图表主要组成
    • 图表配置
    • 标题
    • 坐标轴
    • 数据列
    • 颜色
    • 数据提示框
    • 图例
    • 版权信息
    • HTML标签
    • 标示线
    • 标示带
    • 图表缩放
    • 语言文字
    • 标签及字符串格式化
    • 钻取功能
    • 3D 图表
    • 响应式
  • 数据处理
    • 数据处理概述
    • 服务端动态渲染图表
    • Ajax 请求数据接口
    • 处理文本或文本数据文件
    • 数据功能模块
  • 图表类型
    • 图表类型
    • 直线图
    • 曲线图
    • 面积图及面积范围图
    • 柱状图和条形图
    • 饼图
    • 范围图
    • 散点图及气泡图
    • 漏斗图及金字塔图
    • 极地图
    • 瀑布图
    • 误差线图
    • 箱线图
  • 高级特性
    • 堆叠图
    • 自由绘图
    • 国际化
  • 图表导出模块
    • 图表导出模块概述
    • 客户端导出
    • 搭建导出服务器
    • 命令行导出
    • 导出 Excel 数据文件
  • 图表设计及样式
    • 图表设计及样式
    • 颜色
    • 主题
  • 插件扩展
    • 插件扩展概述
    • 创建插件
    • 提交插件到官方插件库
  • 地图(Highmaps)
    • 开始使用 Highmaps
    • 地图数据集
    • 经纬度
    • 地图导航器
  • 股票图(Highstock)
    • 开始使用 Highstock
    • 范围选择器
    • 导航器
    • 滚动条
    • K 线图
    • 技术指标
    • 自定义技术指标
  • 官方扩展包(Vue React Angular iOS Android .NET)
    • Highcharts .NET
    • Highcharts Vue
    • Highcharts React
    • Highcharts Angular
    • Highcharts iOS
    • Highcharts Android
收起菜单 教程目录

Highcharts Vue

最后修改时间:2019-08-23 16:50

Highcharts Vue 是我们基于 Vue 框架封装的 Highcharts,可以很方便的在 Vue 开发环境中使用 Highcharts 创建交互性图表。

开发环境

  1. 已经全局安装 Node.js, NPM

  2. Vue, Highcharts 库已经安装在项目中

    通过 npm 安装 Highcharts

下载安装

安装 highcharts-vue

npm install highcharts-vue

安装成功显示

npm install

使用

有两种方法可以将 Highcharts-Vue 添加到项目中

1. 全局注册

若想要在应用程序的任何位置使用本插件,请使用全局注册方法。在您的主应用程序文件中导入 Vue 和 Highcharts-Vue 扩展包

import Vue from 'vue'
import HighchartsVue from 'highcharts-vue'

接下来,您可以将其注册为 Vue 对象中的插件:

Vue.use(HighchartsVue)

点击查看示例

2. 局部注册

若仅用于特定组件,请使用局部注册方法。首先,您应该从组件文件中的 Highcharts-Vue 包中导入 Chart 组件对象:

import {Chart} from 'highcharts-vue'

然后,您需要在 Vue 实例配置中注册它,即在 components 部分中

{
    components: {
        highcharts: Chart
    }
}

点击查看示例

注意:如果您想通过 <script> 标签在HTML文档的 <head> 部分引用Highcharts-Vue,您应该使用此包目录下的 dist 目录下的其中一个.js文件。之后, HighchartsVue 对象可以在 window 范围内使用。点击查看示例:JSFiddle示例

配置

1. 选项参数

如果您已经完成上述任务之一(导入和注册组件),它允许您在应用程序中使用 Highcharts-Vue 组件,只需要添加 <highcharts> 元素,而且必须通过它的 :options 参数传递图表配置对象

<highcharts :options="chartOptions"></highcharts>

例如:

new Vue({
    data() {
        return {
            chartOptions: {
                series: [{
                    data: [1, 2, 3] // sample data
                }]
            }
        }
    }
})

2. 导入 Highcharts 模块

要使用任何 Highcharts 模块,您必须将该模块以及 Highcharts 扩展包本身都导入到您的文件中,并将 Highcharts 参数传递给它来添加该模块,例如:

import Highcharts from 'highcharts'
import exportingInit from 'highcharts/modules/exporting'

exportingInit(Highcharts)

3. 实现 stockChart 和 mapChart

Highcharts-Vue 扩展包默认使用 chart 的构造函数,所以如果您需要使用 stockChart 或 mapChart ,只需要按照上面导入 Highcharts 模块的方法导入 stock 或 map 模块,并在你的组件元素中使用 :constructor-type 参数:

import Highcharts from 'highcharts'
import stockInit from 'highcharts/modules/stock'

stockInit(Highcharts) 


<highcharts :constructor-type="'stockChart'" :options="chartOptions"></highcharts>

4. 加载地图

加载地图并使用它们有两种方法

方法一

安装包含所有地图的 @highcharts/map-collection npm 扩展包,然后导入您需要在项目中使用到的地图:

import Highcharts from 'highcharts'
import mapData from '@highcharts/map-collection/custom/world.geo.json'

Highcharts.maps['myMapName'] = mapData

方法二

不安装包含所有地图的扩展包,从 Highmaps地图集 中选择需要使用到的地图,并将地图数据复制到项目中的新文件中。然后只需要将其导入到您想要的任何位置,并以方法一同样的方式使用它。

演示Demo 使用了第二种方法。

5. 更改全局组件标签名称

如果您想要使用另一个名称替代 <highcharts> 作为全局组件标签名,可以在注册插件时传递对象 tagName: [TAG_NAME] 作为选项参数来实现,例如:

import Vue from 'vue'
import HighchartsVue from 'highcharts-vue'

Vue.use(HighchartsVue, {
    tagName: 'charts'
})

之后,您可以使用 charts 作为全局组件标签名:

<charts :options="chartOptions"></charts>

6. 图表回调参数

如果需要使用 Highcharts.chart(renderTo, options[, callback]) 的回调函数,可以通过通过 HTML 组件元素传递 :callback 参数

<highcharts :options="chartOptions" :callback="myCallback">

然后, myCallback 将在图表加载完成后被调用

7. 图表对象引用

您可以在必要时访问 Chart 对象实例(例如,当需要获取某些数据或使用任何 Chart.prototype 函数时),通过调用具体的 Vue 组件实例 chart 字段,但不支持使用其内置的函数更新图表,因为这可能会导致您的应用程序和图表本身之间产生数据同步的问题(它扰乱了使用扩展包的概念)。最推荐的方法是使用 演示Demo 中的方法使用它。

8. 使用 Highcharts.setOptions() 方法

如果您想要使用 Highcharts.setOptions() 方法来定义一些将在所有图表上设置的全局参数,我们推荐您在运用程序的主文件中使用它,并且在这之前需要导入 Highcharts 包

import Highcahrts from 'highcharts'

Highcharts.setOptions({
    // options here
})

9. 使用特定的 Highcharts 实例

有时候,您会处于某种原因需要基本特定的 Highcharts 版本创建图表。以下提供了两种方式,您可以根据个人需要选择一种进行设置。

方法一

在设置一个 Highcharts 实例并在注册组件时将其作为一个全局插件,将其作为 options 在 Vue 的安装函数中传递,如下所示:

import Vue from 'vue'
import Highcharts from 'highcharts'
import HighchartsVue from 'highcharts-vue'

Vue.use(HighchartsVue, {
    highcharts: Highcharts
})

完成后,所有的图表将根据传递的实例进行生成

方法二

将 Highcharts 实例通过 highcharts 组件的属性选项进行传递。使用此方法,只有该图表会根据传递的实例进行生成:

<highcharts :options="chartOptions" :highcharts="hcInstance"></highcharts>


import Highcharts from 'highcharts'

export default {
    name: 'app',
    data() {
        return {
            hcInstance: Highcharts,
            chartOptions: {
                series: [{
                    data: [1, 2, 3]
                }]
            }
        }
    }
}

请注意,这两种使用方式都是可选的,因为在默认情况下,扩展包会自动使用可用的 Highcharts 实例

演示程序

如果您想要使用 Highcharts Vue 扩展包创建的实时应用程序,或者指向查看一切应该是什么样子,这里包含了演示示例,您只需要在本地计算机运行即可。要实现这一点,请下载此仓库,打开终端/控制台并在下载好的文件目录下输入以下两个命令:

npm run build:app
npm run app

仓库下载链接 https://github.com/highcharts/highcharts-vue/tree/master/demo
服务器将被运行在 http://localhost:8080

组件属性

以下是扩展包可以处理的允许直接传递给 <highcharts> 组件实例的所有允许参数的列表

参数类型是否必须描述
:optionsObjectyesHighcharts 图表配置对象
:constructor-typeStringno图表构造函数类型,用于初始化特定图表。允许的参数选项:'chart', 'stockChart', 'mapChart'。第一个为默认值
:callbackFunctionno函数在图表初始化期间作为回调传递,并在图表加载完成后触发
:updateArgsArrayno数组 update() 的函数可选参数。参数应该以与原生 Highcharts 函数相同的顺序定义:[redraw, oneToOne, animation]。这里是参数的具体描述。
:highchartsObjectno特定的 Highcharts 实例。当需要使用不同的 Highcharts 版本构建图表时非常有用。
:deepCopyOnUpdateBooleanno是否将对象进行深拷贝后传递给 Chart.update() 函数。为了避免传递数组的引用,默认情况下它被设置为 true。
注意:这会导致处理大量数据时性能下降,因为复制源数据需要的资源非常巨大,建议在此时将其设置为 false 以禁用该选项。

版权声明

本教程仅用于学习、研究和交流目的,欢迎非商业转载。转载请注明出处及完整的链接。

标题:Highcharts Vue | Highcharts 使用教程

链接:https://www.hcharts.cn/docs/highcharts-vue/

   上一篇 下一篇   
  目录
    简数科技微信,同步更新Highcharts教程

    订阅更新

    © 2022 Highcharts 中文官网, 由 简数科技 提供服务, 浙ICP备16004892号-6, 浙公网安备33011002011664号
    在线客服

    选择服务类型

    技术问题

    • 技术社区
    • 技术支持
    • Q Q 群

    商业授权

    • 使用协议
    • 购买授权
    • 申请试用
    • 授权查询

    图表定制

    • 服务内容
    • VIP 专属服务

    销售服务:    技术服务:

    服务热线:0571 - 8620 8605 / 181 0659 5564    邮件:sales@jianshukeji.com

    服务时间:工作日 9:00 ~ 18:00    紧急服务 :7 x 24 响应(仅限电话)

    重要通知!

    尊敬的用户您好:
    由于域名备案调整,我们将于 2023-01-01 ~ 2023-01-07 日陆续停用 highcharts.com.cn 域名,受影响的网站及域名如下:

    网站或服务名称域名替代的网站
    主站www.highcharts.com.cnwww.hcharts.cn
    静态资源服务/CDNcdn.highcharts.com.cn
    code.highcharts.com.cn
    code.hcharts.cn
    img.highcharts.com.cnimg.hcharts.cn
    API 文档api.highcharts.com.cnapi.hcharts.cn
    导出服务export.highcharts.com.cnexport.hcharts.cn

    以上网站服务及 highcharts.com.cn 域名下的网站将于 2023-01-08 日全部下线,未来一段时间将不可访问,后续我们将上线新的网站。

    如果您的应用中有使用到相关服务,请抓紧时间对链接进行调整(特别是静态资源/CDN 服务的链接),以免影响您的网站或应用的正常运行,由此给您带来的不便,敬请谅解。

    如需帮助,请及时与我们联系:0571-86208605 / 18106595564(微信)。

    简数科技 2022-12-22