可视化工具分享

原创 2016年06月01日 16:19:07

Flask

简介

  • Flask是一个使用 Python 编写的轻量级 web 应用框架
  • 简单易用,上手快

安装使用

  • pip install flask

一个具体应用

  • 结构

    cloud/
    • static/
    • templates/
    • a.py
  • a.py解析
#!/usr/bin/env python
#encoding:utf-8
import sys
import time
import datetime
from flask import Flask,render_template,request,Markup

reload(sys)
sys.setdefaultencoding('utf8')

app=Flask(__name__)

def fun(position):
    f = open(position,"r")
    data = []
    for line in f:
        line = line.strip()
        li = line.split("|")
        if li[0]=='part' or li[0]=='plan':
            s = li[1]+":"+li[2]
            data.append(s)
    f.close()
    return data

@app.route("/C/<i>")
def indexC(i):
    dt = str(i)
    position = '/home/auto/'+dt+'_c_tag/'+'000000_0'
    data_C = fun(position)
    return render_template('cloud_C.html',data = data_C)

@app.route("/G/<i>")
def indexG(i):
    dt = str(i)
    position = '/home/auto/'+dt+'_g_tag/'+'000000_0'
    data_G = fun(position)
    return render_template('cloud_G.html',data = data_G)

if __name__=="__main__":
        app.run(host='0.0.0.0',debug=True)
  • 源数据格式
项目 关键词 人数 时间 项目标记
part 鼻翼缩小 1111 20160410 wzx
plan V脸 115 20160410 wzx
plan botox 265 20160410 wzx
plan 下颌角磨削术 196 20160410 wzx
plan 中胚层疗法 10 20160410 wzx
  • html所需数据格式
关键词 人数
鼻翼缩小 1111
V脸 115
{"name": "微整形数据", "children": [{"name": "C", "children": [{"name": "atte", "children": [{"name": "1:1683"}, {"name": "2:228"}, {"name": "3:92"}, {"name": "4:51"}, {"name": "5:197"}]}, {"name": "part", "children": [{"name": "下巴:2552"}, {"name": "双眼皮:22552"}, {"name": "嘴部:982"}, {"name": "开眼角:2989"}, {"name": "毛发:2224"}, {"name": "泪沟:181"}....

Echart

一个词云的例子

<!DOCTYPE html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>微整形C网关键词热度预览</title>
</head>
<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:400px"></div>
    <!-- ECharts单文件引入 -->
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
    <script type="text/javascript">
        // 路径配置
        require.config({
            paths: {
                echarts: 'http://echarts.baidu.com/build/dist'
            }
        });

        // 使用
        require(
            [
                'echarts',
                'echarts/chart/wordCloud' // 使用什么图就对照官网加载什么模块,按需加载
            ],
            function (ec) {
                // 基于准备好的dom,初始化echarts图表
                var myChart = ec.init(document.getElementById('main'));



                        function createRandomItemStyle() {
                                return {
                                  normal: {
                                        color: 'rgb(' + [
                                        Math.round(Math.random() * 160),
                                        Math.round(Math.random() * 160),
                                        Math.round(Math.random() * 160)
            ].join(',') + ')'
        }
    };
}

var option = {
    title: {
        text: '微整形C网关键词热度预览',
        link: ''
    },
    tooltip: {
        show: true
    },
    series: [{
        name: '详情',
        type: 'wordCloud',
        size: ['49%', '95%'],
        textRotation : [0, 0, 0, 0],
        textPadding: 0,
        autoSize: {
            enable: true,
            minSize: 18
        },
        data: [
           {% for item in data %}
                   {
                   name:"{{item}}".split(":")[0],
                        value:"{{item}}".split(":")[1],
                        itemStyle: createRandomItemStyle()
                   },
                   {% endfor %}

        ]
    }]
};



                                // 为echarts对象加载数据
                myChart.setOption(option);
            }
        );
    </script>
</body>

ElasticSearch

简介

  • Lucene基于java,是一个库,需要在程序中引用,逻辑复杂
  • 分布式、实时、易扩展的全文搜索引擎,基于 Lucene
  • 简单易用,上手快

安装启动

重要概念

  • 集群
  • 节点
  • 分片和复制
  • 索引,类型,文档,域

使用

  • 可以直接将语句写进sh文件执行,也可以直接在命令行执行,查询语句是DSL语言,json格式
  • 检查集群健康 curl ‘localhost:9200/_cat/health?v’
epoch timestamp cluster status node.total node.data shards pri relo init unassign
1464822255 07:04:15 zl-es green 2 2 54 27 0 0 0
  • 查看所有节点列表 curl ‘localhost:9200/_cat/nodes?v’
  • 查看所有索引列表 curl ‘localhost:9200/_cat/indices?v’
health index pri rep docs.count docs.deleted store.size pri.store.size
green marvel-2016.06.01 1 1 30227 0 68.4mb 35.1mb
green bank1 5 1 1000 0 842.3kb 423.6kb
green bank 5 1 1000 0 837.2kb 418.6kb
green customer 5 1 3 0 16kb 8kb
  • 创建索引curl -XPOST ‘localhost:9200/bank/account/_bulk?pretty’ –data-binary @/home/accounts.json
  • 更新update,删除delete,聚合操作,过滤查询……
  • DSL查询特点 curl -<REST Verb> <Node>:<Port>/<Index>/<Type><ID>
    更新一个字段的值
     curl -XPUT 'localhost:9200/customer/external/1?pretty' -d '
            {
              "name": "Jane Doe"
            }'

删除一个文档

curl -XDELETE 'localhost:9200/customer/external/_query?pretty' -d '
        {
          "query": { "match": { "name": "John" } }
        }'

返回地址中包含“mill”或者包含“lane”的账户

curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
        {
          "query": { "match": { "address": "mill lane" } }
        }' 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

echarts3地级市人口密度热力图

准备工作: 1 echarts2官网,下载echarts2,解压。目录结构 2 下载echarts3的js文件 3 http://echarts.baidu.com/downlo...

如何在R中绘制热力地图

一、首先绘画出地图map 地图(map) 按一定的比例运用符号、颜色、文字注记等描绘显示地球表面的自然地理、 行政区域、社会经济状况的图形。 地图绘制思路: ① 绘制需要展示的地图,获取地图...

可视化篇:Echarts3.0引入百度地图

perface 由于一直抽不开身,留言区以及不少朋友都在问如何在Echarts3.0里引入百度地图,由于之前写的是Echart32.0如何引入,但2.0目前已不再更新,所以这段时间断断续续研究了...

可视化篇:Echarts实现区域人群密度实时监控

perface 一些工作经验的整理,欢迎留言探讨。 Echarts2的时候曾试过在百度地图背景上加timeline属性,但发现不支持遂以失败告终,e3后来的bmap.js扩展,使得之前的设...

可视化篇:Echarts个人轨迹可视化实现

写在最前 下面是《可视化篇:效果图》中第8、9张的实现说明 其中: 1. 个人轨迹的可视化是echart通过调用百度地图API后实现,关于Echarts如何调用百度地图API,请参考上一篇文...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)