神秘的echarts用法

echarts简介

  1. 百度开发团队制作,开源交个apache基金管理
  2. 制作图表的javascript库
  3. 同类型产品hightCharts  D3

echarts步骤

1.将js文件下载至项目中

2. 初始化

var echart = echarts.init(dom节点,主题)

3. 定义选项option

const option = {
 title标题
 legend图例
 color调试版本
 tooltip提示
 xAxis 轴线X
 yAxis 轴线Y
 series 系列数据
}

4. 更新选项

echart.setOption(option)

选项option

标题title

text 文本

title:{text:"地图"},

图例legend

图例,展现了不同系列的标记、颜色和名字

legend:{data:["成绩"]},

 提示tooltip

鼠标划入时的提示

tooltip:{},

 x轴线

{data:["x1","x2",...]}

y轴线

{data:["y1","y2",...]}

图表的类型type

1.柱状图

2.线

3.平滑线

4.面

5.饼状图

系列数据

bar柱状图

{
name:"名称",
type:"bar",
data:[10,{value:10}],
itemStyle:{color:xxx}
}

效果图

 line线与smooth

{
 type: "line",
 data: [75, 80, 90, 60, 67],
 name: "平均成绩",
 smooth: true
},

其中smooth表示平滑的

效果图

 pie饼状图

{
name:"名称",
type:"pie",
radius:["8%","23%"],
data:[{
 name: "选择题",
 value: 60},{
 name:"填空题",
 value:40},{
 name: "简答题",
 value: 20},{
 name: "应用题",
 value: 30}],
top: "-50%",
left: "30%"
}

效果图:

 颜色样式控制

主题

默认:dark 深色        light 亮色

var echart = echarts.init(document.getElementById("container"),'light');

dark 深色

light 亮色

 自定义主题

1.官网:主题编辑器 - Apache EChartsicon-default.png?t=M276https://echarts.apache.org/zh/theme-builder.html2.下载并引用 init(dom,“主题名称”)

调色板

color:[颜色数组]

itemStyle

1.具体数据:直接引用到具体数据中

data: [88, 90, 76, {value:50,itemStyle:{color:"pink"}}, 75],

效果

 2.系列数据

itemStyle:{
 normal:{color:"#b03611"},
 emphasis:{color:"#f70"}
}

上面效果图可以看到除了2.6的数据柱状图为粉色,其他都为同一色

normal:{正常样式}
emphasis:{强调样式}

特殊样式

线

lineStyle:{width:"10px",cap:"round"}

10像素,cap端点 平滑

柱状图

itemStyle:{borderRadius:[100,100,100,100],}

borderRadius内部表示 圆角,左上,右上 ,右下,左下

渐变颜色

var mycolor1 =  {
    type: 'linear',
    x: 0,
    y: 0,
     x2: 0,
    y2: 1,
    colorStops: [{
         offset: 0, color: 'rgba(23, 135, 255, 1)' // 0% 处的颜色
    }, {
         offset: .7, color: 'rgba(27, 201, 249,1)' // 100% 处的颜色
     }],
     global: false // 缺省为 false
}

效果

 堆叠图

{name:"ui",data:[],stack:true},
{name:"web",data:[],stack:true}

成品

 富文本label

data:[
 {value:120,name:"百度",label:{
 show:true,
 position:"center",
 formatter:"{big|{d}}{small|%}\n{b}",
 rich:{
	big:{fontSize:"36px",fontWeight:900},
	small:{fontSize:"12px",color:"#00aaff"}
 }
 }},
 {value:25,name:"其他",label:{show:false}}
]

1.formatter:

{a}  系列名称
{b} 名称
{c}  值
{d} 百分百

2.position

"center","insideRight"中间 内部右侧

3.show:false 不显示

4.效果图

地图 map

图数据series

series:[
 {name:"china",type:"map",mapType:"china",data:[]}
]

方法getMap

function getMap(obj={en:"china"}){
 fetch("./json/province/"+obj.en+".json")
 .then(res=>res.json())
 .then(res=>{
 echarts.registerMap(obj.en,res);
 option.series[0].data=province;
 option.series[0].mapType=obj.en;
 echart.setOption(option);
 })
}

更新option渲染

echart.setOption(option);

效果图

 

### 在 Vue2 项目中引入和配置 ECharts #### 安装依赖 为了在 Vue2 项目中使用 ECharts,首先需要安装 `echarts` 库。可以通过 npm 或 yarn 来完成这一操作。 ```bash npm install echarts --save ``` 或者: ```bash yarn add echarts ``` 这一步会将 ECharts 添加到项目的依赖列表中[^1]。 --- #### 创建一个独立的图表组件 (Chart.vue) 创建一个新的文件 `Chart.vue` 并将其作为单独的组件来封装 ECharts 图表逻辑。 以下是完整的代码实现: ```vue <template> <div ref="chart" style="width: 100%; height: 400px;"></div> </template> <script> import * as echarts from 'echarts'; export default { data() { return { chartInstance: null, }; }, mounted() { this.initChart(); }, beforeDestroy() { if (!this.chartInstance) { return; } this.chartInstance.dispose(); // 销毁实例以释放内存资源 }, methods: { initChart() { const chartDom = this.$refs.chart; // 获取 DOM 节点 this.chartInstance = echarts.init(chartDom); // 初始化 ECharts 实例 const option = { title: { text: 'ECharts 示例', }, tooltip: {}, legend: { data: ['销量'], }, xAxis: { type: 'category', data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子'], }, yAxis: { type: 'value', }, series: [ { name: '销量', type: 'bar', data: [5, 20, 36, 10, 10, 20], }, ], }; this.chartInstance.setOption(option); // 设置图表选项 }, }, }; </script> <style scoped> /* 可在此处定义局部样式 */ </style> ``` 此部分实现了基本的柱状图展示功能,并通过生命周期钩子管理了 ECharts 的初始化与销毁过程。 --- #### 在父组件中注册并使用 Chart 组件 编辑父组件(例如 App.vue),导入刚刚创建的 `Chart.vue` 文件,并将其注册为子组件。 ```vue <template> <div id="app"> <h1>Vue2 和 ECharts 集成示例</h1> <Chart /> </div> </template> <script> import Chart from './components/Chart.vue'; // 导入自定义的 Chart 组件 export default { name: 'App', components: { Chart, }, }; </script> <style> /* 全局样式可以放在这里 */ body { font-family: Arial, sans-serif; } </style> ``` 这样就完成了整个集成流程,在页面加载时即可看到渲染好的 ECharts 图形[^1]。 --- #### 按需引入 ECharts 模块(优化性能) 如果希望减少打包体积,可以选择按需引入所需的 ECharts 功能模块而非整体库。例如仅加载折线图所需的部分: ```javascript // 替代完整引入方式 // import * as echarts from 'echarts'; import echarts from 'echarts/lib/echarts'; import 'echarts/lib/chart/bar'; // 加载柱状图模块 import 'echarts/lib/component/title'; // 加载标题模块 import 'echarts/lib/component/tooltip'; // 加载提示框模块 import 'echarts/lib/component/legend'; // 加载图例模块 ``` 这种方式能够显著降低最终构建包的大小,适用于生产环境下的性能优化需求[^1]。 --- ### 注意事项 - 如果遇到跨域请求数据的情况,请确保服务器端支持 CORS 请求。 - 使用动态更新的数据时,可通过监听事件重新调用 `setOption()` 方法刷新视图。 - 对于复杂的交互场景,建议深入研究官方文档中的 API 接口说明。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值