cloud.html

  1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>WordCloud Demo</title>
6 </head>
7 <body>
8 <!-- 顺序不能变-->
9 <script src='../static/js/echarts.min.js'></script>
10 <script src='../static/js/echarts-wordcloud.min.js'></script>
11 <script src="../static/js/jquery-3.3.1.min.js"></script>
12 <div id="wordcloud_echarts" style="width:900px; height:600px">
13 </div>
14 <div>
15 <select id="myselect">
16 <option value="result_data" selected>全部数据</option>
17 <option value="result_cj">财经</option>
18 <option value="result_fc">房产</option>
19 <option value="result_game">游戏</option>
20 <option value="result_js">军事</option>
21 <option value="result_jy">教育</option>
22 <option value="result_kj">科技</option>
23 <option value="result_qc">汽车</option>
24 <option value="result_ty">体育</option>
25 <option value="result_tyjd">体育焦点</option>
26 <option value="result_zhty">综合体育最新</option>
27 <option value="result_yl">娱乐</option>
28 </select>
29 <button onclick="tijiao()">检索</button>
30 </div>
31 <script>
32
33 //--------------------------------------------------------------
34 var myChart = echarts.init(document.getElementById('wordcloud_echarts'));
35 var option = {
36 tooltip: {
37 show: true,
38 trigger: 'item',
39 position: "top"
40 },
41 series: [{
42 type: 'wordCloud',
43 sizeRange: [15, 80],
44 rotationRange: [0, 0],
45 rotationStep: 45,
46 gridSize: 8,
47 shape: 'pentagon',
48 width: '100%',
49 height: '100%',
50 textStyle: {
51 normal: {
52 color: function () {
53 return 'rgb(' + [
54 Math.round(Math.random() * 160),
55 Math.round(Math.random() * 160),
56 Math.round(Math.random() * 160)
57 ].join(',') + ')';
58 }
59 },
60 emphasis: { // 单词高亮时显示的效果
61 shadowBlur: 10,
62 shadowColor: '#333'
63 }
64 },
65 left: 'center',
66 top: 'center',
67 data: [{
68 "name": "花鸟市场",
69 "value": 1446
70 },
71 {
72 "name": "汽车",
73 "value": 928
74 },
75 {
76 "name": "视频",
77 "value": 906
78 },
79 {
80 "name": "电视",
81 "value": 825
82 },
83 {
84 "name": "Lover Boy 88",
85 "value": 514
86 }]
87 }]
88 };
89 myChart.setOption(option);
90 window.addEventListener("resize", function() {
91 myChart.resize();
92 })
93 function tijiao(){
94 var select_value= document.getElementById("myselect").value
95 $.ajax({
96 url:"/cloud_data?data="+select_value+"",
97 async:true,
98 success:function(data) {
99 option.series[0].data=data.data
100 // 使用刚指定的配置项和数据显示图表。
101 myChart.setOption(option);
102 },
1 success:function(data) {
2 option.series[0].data=data.data
3 // 使用刚指定的配置项和数据显示图表。
4 myChart.setOption(option);
5 },

103                 error:function (xhr,type,errorThrown) {
104 alert("出现错误!")
105 }
106 })
107 }
108 </script>
109 </body>
110 </html>

有三个点需要注意:

1、js文件引入顺序

1        <!-- 顺序不能变-->
2 <script src='../static/js/echarts.min.js'></script>
3  <script src='../static/js/echarts-wordcloud.min.js'></script>
4 <script src="../static/js/jquery-3.3.1.min.js"></script>

2、ajax的success方法

1 success:function(data) {
2 option.series[0].data=data.data
3 // 使用刚指定的配置项和数据显示图表。
4 myChart.setOption(option);
5 },

3、需要的数据格式

 1             data: [{
2 "name": "花鸟市场",
3 "value": 1446
4 },
5 {
6 "name": "汽车",
7 "value": 928
8 },
9 {
10 "name": "视频",
11 "value": 906
12 },
13 {
14 "name": "电视",
15 "value": 825
16 },
17 {
18 "name": "Lover Boy 88",
19 "value": 514
20 }]

常用的两个属性

1、鼠标高亮显示

放在series里

      emphasis: {  // 单词高亮时显示的效果
shadowBlur: 10,
shadowColor: '#333'
}

2、词语显示value

放在option里

 tooltip: {
show: true,
trigger: 'item',
position: "top"
},

效果

实现一个简单的echarts词云图PythonFlask的更多相关文章

  1. Echarts词云图

    今天使用Echarts写了个词云图,之前使用pycharts生成的html就是echarts.主要代码如下,另外Echarts需要到https://www.echartsjs.com/下载,开发时使用 ...

  2. python词云图与中文分词

    2019-12-12中文文本分词和词云图具体功能介绍与学习代码: import jiebaa="由于中文文本的单词不是通过空格或者标点符号来进行分割"#jieba.lcut()s是 ...

  3. 用Python制作酷炫词云图,原来这么简单!

    一.简介词云图是文本挖掘中用来表征词频的数据可视化图像,通过它可以很直观地展现文本数据中地高频词:! 图1 词云图示例 在Python中有很多可视化框架可以用来制作词云图,如pyecharts,但这些 ...

  4. 用python实现一个简单的词云

    对于在windows(Pycharm工具)里实现一个简单的词云还是经过了几步小挫折,跟大家分享下,如果遇到类似问题可以参考: 1. 导入wordcloud包时候报错,当然很明显没有安装此包. 2. 安 ...

  5. python 数据分析--词云图,图形可视化美国竞选辩论

    这篇博客从用python实现分析数据的一个完整过程.以下着重几个python的moudle的运用"pandas",""wordcloud"," ...

  6. echarts词云引用

    最近项目中需要使用echarts的词云图,因为几经波折才引用成功,所以想记下来跟大家分享,(我的随笔不会写那么多让人需要动脑子去理解的东西,就是记录一下步骤,因为经验甚少,底层原理懂得不多,所以就先记 ...

  7. V-Charts中使用extend属性定制词云图

    [本文出自天外归云的博客园] 简介 在Vue中使用E-Charts可以用V-Charts,词云图在V-Charts官网中介绍比较简单,如果想更多定制的话,官网上说要在extend属性中进行扩展. V- ...

  8. python爬虫+词云图,爬取网易云音乐评论

    又到了清明时节,用python爬取了网易云音乐<清明雨上>的评论,统计词频和绘制词云图,记录过程中遇到一些问题 爬取网易云音乐的评论 一开始是按照常规思路,分析网页ajax的传参情况.看到 ...

  9. Excel催化剂开源第27波-Excel离线生成词云图

    在数据分析领域,词云图已经成为在文本分析中装逼的首选图表,大家热烈地讨论如何在Python上做数据分析.做词云图. 数据分析从来都是Excel的主战场,能够让普通用户使用上的技术才是最有价值的技术,一 ...

  10. 个人永久性免费-Excel催化剂功能第18波-在Excel上也能玩上词云图

    这年头数据可视化日新月异,在Excel上做数据分析,最后一步,难免要搞个图表输出高大上一回,微软也深知此道,在Excel2016上更新了一大波图表功能,市场上很耀眼的词云图还是没加进来,虽然在各大的在 ...

随机推荐

  1. centos7安装mailx

    1.安装mailx yum install mailx -y 2.配置证书 mkdir -p /root/.certs echo -n | openssl s_client -connect smtp ...

  2. 如何获取oracle dbid

    1.查询v$database获得 由于DBID在控制文件和数据文件中都存在记录,所以如果能够mount数据库就可以查询v$database视图获得.  SQL> alter database m ...

  3. win32 - wsprintfW的使用

    文档:将格式化的数据写入指定的缓冲区.根据格式字符串中相应的格式说明,将转换任何参数并将其复制到输出缓冲区.该函数在其写入的字符后附加一个终止空字符,但返回值的字符计数中不包含终止空字符. 例子: # ...

  4. AI数字人SadTalker实战

    1.概述 AI数字人在营销和品牌推广中扮演着至关重要的角色,许多企业和个人正积极利用数字技术来打造属于自己的财富.有没有一种简单而免费的方式来创建自己的数字人呢?本篇博客笔者将为大家介绍如何搭建属于自 ...

  5. django中如何处理事务

    生成订单时,一次性生成多条数据记录或者一次性操作多个模型,都有可能产生中途报错的情况,所以需要在生成订单时保证多个数据操作的原子性. 事务 在完成一个整体功能时,操作到了多个表数据,或者同一个表的多条 ...

  6. sql注入简单初

    import requests,sys,time from PyQt5.QtWidgets import * from PyQt5.QtGui import QIcon from threading ...

  7. 【LeetCode栈与队列#01】队列的基本操作:用栈模拟队列和用队列模拟栈

    用栈实现队列 力扣题目链接(opens new window) 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- ...

  8. 【App Service for Windows】为 App Service 配置自定义 Tomcat 环境

    问题描述 当在App Service for Windows环境中所列出的Tomcat Version 没有所需要的情况下,如何实现自定义Tomcat 环境呢? 问题解答 第一步: 从官网下载要使用的 ...

  9. 使用PdfSharp从模板生成Pdf文件

    ​ 最近在做一个生成文档的需求.通过先制作一个包含各字段占位符的文档模板,导入这个模板并填写内容替换掉占位符,再输出成最终文件. 由于版式固定,安全性更好,业务上常用Pdf作为最终标准化的格式, 在. ...

  10. Spring事务(六)-只读事务

    @Transactional(readOnly=true)就可以把事务方法设置成只读事务.设置了只读事务,事务从开始到结束,将看不见其他事务所提交的数据.这在某种程度上解决了事务并发的问题.一个方法内 ...