ApexCharts使用示例 -- 柱状图

ApexCharts使用示例 – 柱状图

一、引入apexcharts.js

 <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script><script src="../apexcharts.js"></script>

二、HTML代码

<html>
    <head>
        <title>ApexCharts测试样例-Scatter</title>
        <style>
            #chart1 {
            max-width: 500px; 
            margin: 50 auto;
          }
        </style>
    </head>
    <body >
        <div id="chart1">
        </div>
    </body>
    <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script>
</html>

三、JavaScript代码

 var options = {
        /*
          series数据格式;
          series:[{name,data:[]}],
        */
          series: [{
          name: '出勤天数',
          data: [21, 20, 12, 23, 19, 28, 26, 20]
        }],
          chart: {
          type: 'bar', //图表类型,bar为柱状图
          height: 350,
          events: { // 添加柱状图数据的点击事件
            dataPointSelection: function (event, chartContext, config) {
	            	console.log(event);
	            	console.log(chartContext);
	                console.log(config);
					alert(config.w.config.labels[config.seriesIndex] + " " +
					 config.w.config.series[config.seriesIndex].name + " " +
					 config.w.config.series[config.seriesIndex].data[config.dataPointIndex]);
	            }
        	}
        },
        plotOptions: {
          bar: {
            horizontal: false, // 是否启用水平方式显示
            columnWidth: '55%', // 设置柱状图单个的宽度
          },
        },
        dataLabels: {
          enabled: true //启用数据标签,即是否直接在图标上显示数据
        },
        xaxis: {
          type:'datetime', //设置X轴的类型 三种可选:category、datetime、numeric
          labels:{
            format:"yyyy-MM" //设置X轴时间格式
          }
        },
        yaxis: {
          title: {
            text: '出勤天数'
          }
        },
        //设置X轴的时间
        labels:[
          '2018-12','2019-01','2019-02',
          '2019-03', '2019-04', '2019-05', '2019-06', '2019-07'
        ],

        fill: {
          opacity: 1 //设置图形的透明度,数值越小透明度越高,数值范围0-1
        },
        tooltip: {
          x:{
            format:"yyyy年MM月"
          },
          y: {
            formatter: function (val) {
              return val + " 天"
            }
          }
        }
        };
        var chart = new ApexCharts(document.querySelector("#chart"), options);
        chart.render();

四、效果

在这里插入图片描述
点击事件和数据标签的效果:
在这里插入图片描述

### 如何在 Vue3 中使用 ApexCharts 创建柱状图 要在 Vue3 中实现一个基于 ApexCharts柱状图,可以借助 `vue3-apexcharts` 库来完成。以下是具体方法以及完整的代码示例。 #### 安装依赖 首先需要安装 `vue3-apexcharts` 和其核心库 `apexcharts`: ```bash npm install apexcharts vue3-apexcharts ``` #### 示例代码 以下是一个简单的 Vue3 组件,展示如何通过 `vue3-apexcharts` 来创建一个基本的柱状图。 ```javascript <template> <div class="chart-container"> <apexchart type="bar" :options="chartOptions" :series="series"></apexchart> </div> </template> <script> import { defineComponent } from "vue"; import ApexChart from "vue3-apexcharts"; export default defineComponent({ name: "BarChartExample", components: { ApexChart, }, data() { return { series: [ { name: "销售额", data: [44, 55, 57, 56, 61, 58, 63], // 数据系列 }, ], chartOptions: { chart: { height: 350, type: "bar", // 设置图表类型为柱状图 }, plotOptions: { bar: { borderRadius: 4, horizontal: false, // 是否水平排列,默认垂直 }, }, dataLabels: { enabled: false, // 关闭数据标签显示 }, xaxis: { categories: ["周一", "周二", "周三", "周四", "周五", "周六", "周日"], // X 轴类别名称 }, yaxis: { title: { text: "金额 (元)", // Y 轴标题 }, }, fill: { colors: ["#FF9B8C"], // 填充颜色设置 }, tooltip: { y: { formatter: function (val) { return `${val} 元`; // 提示框格式化函数 }, }, }, }, }; }, }); </script> <style scoped> .chart-container { max-width: 600px; margin: auto; } </style> ``` 上述代码展示了如何定义一个基础的柱状图组件,并设置了必要的选项和样式[^1]。其中,`series` 属性用于指定数据序列,而 `chartOptions` 则包含了图表的各种配置项。 #### 配置说明 - **type**: 指定图表类型为 `"bar"` 表示柱状图- **dataLabels.enabled**: 控制是否显示数据标签。 - **plotOptions.bar.horizontal**: 如果设为 `true`,则会生成横向柱状图;默认情况下为竖直方向。 - **fill.colors**: 自定义填充颜色。 - **tooltip.y.formatter**: 对提示框中的数值进行自定义格式化处理[^2]。 #### 运行环境准备 确保已正确引入 CSS 文件以便渲染 SVG 图形正常工作。如果未自动加载,则需手动添加如下语句到入口文件中(如 main.js 或 app.vue): ```javascript import "apexcharts/dist/apexcharts.css"; ``` --- ###
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值