关于echart的一个小例子

本文介绍了一个使用ECharts创建动态图表的实例。通过一个简单的输入控制,动态生成折线图,并详细解释了数据处理方法和图表配置技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)echart是什么

是一个简单的,面向对象的图表绘制工具库。对我唯一的感觉就是漂亮,百度开发出来的就是很漂亮。而且相对来说,类型更多。

(2)关于echart的一个小列子

我做这个的时候遇到的最难的问题是serise的数据类型

头开始我给于的是形式相同的一个字符串,百思不得其解,最后查资料应该是一个二维数组

但是当我换成二维数组发现换是不行,我又找到一个学长,他帮我解答了这个问题

问题不在数据,真是无语,我竟然在数据这个问题上纠结了那么长时间

下面是修改过的代码,复制粘贴就可运行

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
    <!-- 引入 echarts.js -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/echarts/3.2.3/echarts.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="width: 600px;height:400px;"></div>
x0:<input id="x0" value="0"/>
y0:<input id="y0" value="0"/>
x1:<input id="x1" value="5"/>
y1:<input id="y1" value="2"/>
<button id="b1">生成</button>
<script type="text/javascript">
    $(function () {

        var tempY, m, y, k, dx, dy;
        var dataline = new Array();
        var Yarray = new Array();
        var Xarray = new Array();
        var y0, x0, y1, x1;

        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));

        // 指定图表的配置项和数据
        var option = {
            title: {
                text: 'title',
                x: 'center',
                y: 0
            },

            tooltip: {
                formatter: 'Group {a}: ({c})'
            },
            xAxis: [
                {gridIndex: 0, min: 0, max: 5},

            ],
            yAxis: [
                {gridIndex: 0, min: 0, max: 5},

            ],
            series: [
                {
                    name: 'I',
                    type: 'scatter',
                    xAxisIndex: 0,
                    yAxisIndex: 0,
                    data: [],
                },

            ]
        };

        function accAdd(arg1, arg2) {

            var r1, r2;
            try {
                r1 = arg1.toString().split(".")[1].length
            } catch (e) {
                r1 = 0
            }
            try {
                r2 = arg2.toString().split(".")[1].length
            } catch (e) {
                r2 = 0
            }
            m = Math.pow(10, Math.max(r1, r2))
            return ((arg1 * m + arg2 * m) / m).toFixed(2);
        }

        function returnData(x0, y0, x1, y1) {

            dy = y1 - y0;
            dx = x1 - x0;
            k = dy / dx;
            y = parseInt(y0);
            p = 0.5;
            for (var sub1 = x0; sub1 < x1; sub1++) {
                tempY = parseInt(accAdd(y, p));
                Yarray[sub1] = tempY;//Y轴数据
                y = accAdd(y, k);
            }
            for (var sub2 = x0; sub2 < x1; sub2++) {
                Xarray[sub2] = parseInt(sub2);//X轴数据

            }
            for (var i = 0, len = Yarray.length; i < len; i++) {
                dataline[i] = [Xarray[i], Yarray[i]];
            }
            return dataline;
        }

        $("#b1").click(function () {

            myChart.clear();

            x0 = document.getElementById("x0").value;
            y0 = document.getElementById("y0").value;
            x1 = document.getElementById("x1").value;
            y1 = document.getElementById("y1").value;

            //绑定数据
            option.series[0].data = returnData(x0, y0, x1, y1);

            // 使用刚指定的配置项和数据显示图表。
            myChart.setOption(option);
        })

    })

</script>
</body>
</html>



<think>好的,我现在需要帮助用户寻找关于ECharts中rich文本样式配置的示例。用户提到了引用1、2、3,这些引用都涉及ECharts的富文本标签(rich text)的使用方法、案例和功能。首先,我需要仔细分析用户提供的引用内容,看看里面有没有直接相关的示例或说明。 引用1提到可以在series-bar.label.normal.rich中定义文本片段样式。这说明在柱状图的标签配置中,可以使用rich属性来定制不同片段的样式。引用2提供了一个案例网址,里面可能有具体的示例,比如本年商场顾客男女人数统计的图表,可能用到了柱状图和折线图,并结合了rich文本。引用3则详细说明了富文本的功能,比如整体样式、个别片段样式、图片使用和组合效果,如表格和分割线。 接下来,我需要回忆ECharts官方文档中关于rich的配置项。通常,rich允许通过定义不同的样式块(如字体、颜色、背景、边框等),然后在文本中使用大括号包裹的名称来引用这些样式。例如,在文本中写`{a|这段文字样式为a}`,并在rich中定义a的样式。 用户需要的是具体的示例,所以应该提供几个典型的应用场景,比如不同颜色的文字、带背景的标签、图标与文本结合等。同时,用户提供的引用2中的案例网站可能有现成的代码示例,需要引导用户去查看。 此外,要注意引用对应的来源,确保回答中的引用标识正确。例如,引用1和引用3都提到了富文本的整体和片段样式,而引用2提供了实际案例的链接。需要将这些信息整合到回答中,并自然地添加引用标识。 可能还需要考虑用户的实际应用场景,比如他们可能想在柱状图的标签中添加不同样式的文本,或者在提示框中使用富文本格式。因此,给出不同组件的示例(如series-bar的label,tooltip等)会更有帮助。 最后,确保回答结构清晰,分点说明,并生成相关问题,帮助用户进一步探索。例如,如何调整富文本的边框,或者如何实现更复杂的布局。</think>关于ECharts中`rich`富文本样式的配置示例,以下是具体实现方法和典型应用场景的说明: ### 一、基础文本片段样式控制 在柱状图标签中实现多颜色文字组合: ```javascript label: { show: true, formatter: '{a|红色文字} {b|蓝色文字}', rich: { a: { color: '#ff0000', fontSize: 16 }, b: { color: '#0000ff', fontWeight: 'bold' } } } ``` 此配置通过`formatter`中的`{a|...}`占位符对应`rich`定义的样式块,实现同一标签内不同颜色和字重的文本组合[^3]。 ### 二、复杂标签布局实现 创建带背景框和分割线的复合标签: ```javascript rich: { total: { backgroundColor: '#999', color: '#fff', padding: [5, 10], borderRadius: 5 }, line: { height: 10, borderColor: '#aaa', borderWidth: 1, width: '100%' } } ``` 通过定义`line`样式块可实现水平分隔线,`total`样式块创建圆角背景容器。 ### 三、图表元素与文本混排 在饼图标签中嵌入图标: ```javascript formatter: '{icon|◼} 销售额: {value|¥12500}', rich: { icon: { height: 16, width: 16, color: '#4F81BD' }, value: { color: '#c23531', padding: [0, 5] } } ``` 通过定义`icon`样式块调整图标尺寸和颜色,实现图形符号与数值的并排显示[^2]。 ### 四、响应式布局配置 在tooltip中实现自适应布局: ```javascript tooltip: { formatter: '{a|商品类别}: {b|家电}\n{hr|}\n{c|销售额} ¥4500', rich: { hr: { borderWidth: 1, width: '100%' }, c: { align: 'right' } } } ``` `hr`样式块创建水平分隔线,`c`样式块实现右对齐文本[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值