数据

    O700    O2833
O700 O331
O700 O3425
O700 O350
O700 O3516
O700 O3826

读取文件类

public class FileReadFromHdfs {

    public static List<Data>  getStringByTXT()
{ Configuration conf=new Configuration();
String txtFilePath = "hdfs://地址:9000/文件";
StringBuffer buffer = new StringBuffer();
FSDataInputStream fsr = null;
BufferedReader bufferedReader = null;
String lineTxt = null; List<Data> datas=new ArrayList<Data>();
try
{
FileSystem fs = FileSystem.get(URI.create(txtFilePath),conf);
fsr = fs.open(new Path(txtFilePath));
bufferedReader = new BufferedReader(new InputStreamReader(fsr));
while ((lineTxt = bufferedReader.readLine()) != null)
{
String line=lineTxt.toString();
String[] arr=line.split("\t");
Data data=new Data();
data.setaString(arr[]);
data.setbString(arr[]);
//data.setcString(arr[2]);
datas.add(data); }
} catch (Exception e)
{
e.printStackTrace();
} finally
{
if (bufferedReader != null)
{
try
{
bufferedReader.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
return datas;
}

echarts关系图页面

<title>数据分析</title>
</head>
<body>
<%
FileReadFromHdfs4 fileReadFromHdfs4 =new FileReadFromHdfs4();
List<Plane> planes=fileReadFromHdfs4.getStringByTXT();
FileReadFromHdfs5 fileReadFromHdfs5 = new FileReadFromHdfs5();
List<HangXian> hangXians =fileReadFromHdfs5.getStringByTXT();
%>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="height:800px;width: 1500px"></div>
<!-- ECharts单文件引入 -->
<script src="echarts.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts-gl/echarts-gl.min.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts-stat/ecStat.min.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/extension/dataTool.min.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/map/js/china.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/map/js/world.js"></script>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=ZUONbpqGBsYGXNIYHicvbAbM"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/extension/bmap.min.js"></script>
<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/simplex.js"></script>
<script type="text/javascript">
var w = 400; // svg宽度
var h = 200; // svg高度
var dataset = []; // 坐标点数据集合
var xRange = Math.random() * 1000; // x坐标的范围
var yRange = Math.random() * 1000; // y坐标的范围
var num = 50; // 点的个数
var padding = 50; // 描点区域距离svg边界的间距
// 基于准备好的dom,初始化echarts图表
var myChart = echarts.init(document.getElementById('main')); var option = {
title: {
text: 'NPM Dependencies'
},
animationDurationUpdate: 1500,
animationEasingUpdate: 'quinticInOut',
series : [
{
type: 'graph',
layout: 'none',
// progressiveThreshold: 700,
data:[
<%
Plane[] planes2 =new Plane[planes.size()/30];
for(int i=0 ; i<(planes2.length ); i++)
{
planes2[i]=planes.get(i);
int num=Integer.parseInt(planes2[i].getNum());
%>
{
x: Math.floor(Math.random()*xRange),
y: Math.floor(Math.random()*yRange),
name:'<%=planes2[i].getStart()%>',
symbolSize: <%=num/10000%>,
itemStyle: {
normal: {
color:'#'+Math.floor(Math.random()*0xffffff).toString(16)
}
} },
<%
}
%> ],
edges: [
<%
HangXian[] hangXians2=new HangXian[hangXians.size()];
for(int j=0;j<hangXians2.length;j++){
hangXians2[j]=hangXians.get(j);
%>
{
source:'<%=hangXians2[j].getStart()%>',
target:'<%=hangXians2[j].getEnd()%>',
},
<%
}
%>
],
label: {
emphasis: {
position: 'right',
show: true
}
},
roam: true,
focusNodeAdjacency: true,
lineStyle: {
normal: {
width: 0.5,
curveness: 0.3,
opacity: 0.7
}
}
}
]
}; // 为echarts对象加载数据
myChart.setOption(option);
</script>
</body>
</html>

hadoop下生成echarts关系图的更多相关文章

  1. Python - 使用objgraph生成对象引用关系图

    1- objgraph简介 HomePage:https://mg.pov.lt/objgraph/ PyPI:https://pypi.org/project/objgraph/ 一般用于分析pyt ...

  2. Echarts关系图-力引导布局

    需要做一个树形图,可以查看各个人员的关系. 可伸缩的力引导图-失败 刚开始,打算做一个可展开和伸缩的,搜索时候发现CSDN有一篇美美哒程序媛写的Echarts Force力导向图实现节点可折叠. 这里 ...

  3. Echarts 关系图 添加点击事件

    /*实现的效果是:在关系图上加点击事件,点击某个点,得到改点代表的内容,并且实现一个跳转效果. 关键代码已用红色标出*/ <!DOCTYPE html> <html lang=&qu ...

  4. eclipse下生成Java类图和时序图,生成UML图

    1.安装和使用AmaterasUML 安装AmaterasUML前,需要先安装GEF采用eclipse在线安装方式安装就好.eclipse在线安装GEF的地址:http://download.ecli ...

  5. 使用egypt+graphviz生成函数调用关系图示例

    总结: make  (-fdump-rtl-expand)  去除编译优化,比如-O3 egypt test.c.128r.expand >test.dot  可以手动打开dot文件去除一些孤立 ...

  6. echarts关系图圆心颜色渐变

    let option = { backgroundColor: '#1a4377', animationDurationUpdate: 1500, // 动画更新变化时间 animationEasin ...

  7. 201706 gem 'rails-erd'生成Model关系图

    [工具]一张图理清各个model之间关系 安装 Graphviz 2.22+: 终端机中执行 brew install graphviz Gemfile中添加 gem 'rails-erd' 终端机中 ...

  8. vue下使用echarts折线图及其横坐标拖拽功能

    vue页面中使用折线图,并且有时间段筛选.因此就需要用到横坐标的拖拽功能. 界面效果如下: 现在来看这个效果的实现代码: drawLine() { let that = this, lineDate ...

  9. Echarts——关系图(人民的名义为例,简化)源码

    参考博文:https://www.cnblogs.com/emrys5/p/echart-relationship-map.html <!DOCTYPE html> <html> ...

随机推荐

  1. 取长文本 READ_TEXT

    ****取长文本  FORM GET_TEXT USING TDID TDNAME. SELECT SINGLE mandt tdobject tdname tdid tdspras    INTO  ...

  2. Oracle常用操作表空间sql脚本

    --删除用户(如果用户下面有对象,需要加cascade参数) drop user zxasrs cascade; --修改表空间为离线 alter tablespace zxasrs offline; ...

  3. C++ 简介 基本语法 注释

    一.第一个 C++ 程序 #include <iostream> using namespace std; int main() { cout << "Hello, ...

  4. 高级测试工程师面试必问面试基础整理——python基础(一)(首发公众号:子安之路)

    现在深圳市场行情,高级测试工程师因为都需要对编程语言有较高的要求,但是大部分又没有python笔试机试题,所以面试必问python基础,这里我整理一下python基本概念,陆续收集到面试中python ...

  5. P2085 最小函数值

    题目链接hhh:https://www.luogu.org/problemnew/show/P2085好嘛,运气真好,刚A掉序列合并,正好碰到这题,可以说是序列合并的升级版了 那么简单说一下思路,首先 ...

  6. kali安装redis

    下载 wget http://download.redis.io/releases/redis-4.0.11.tar.gz 解压 tar -zxvf redis-4.0.11.tar.gz 切换目录 ...

  7. NFC读写器调试总结20191203

    以下为NFC读写器调试经验总结: 1.读写器部分,从TX1/TX2输出的13.56MHZ信号主要由L0/C0构成低通滤波器,用于滤除13.56MHZ的高次谐波,取值L0=1UH,C0=47PF时候,谐 ...

  8. 使用fiddler 抓包app 网络连接不上的原因

    https://blog.csdn.net/m0_37554415/article/details/80434477· 设置完记得关掉fiddler 重启 基于fiddler 4 windown 10 ...

  9. a++和++a的区别

    a++是先执行表达式后再自增,执行表达式时使用的是a的原值.++a是先自增再执行表达示,执行表达式时使用的是自增后的a.例:int a=0printf("%d",a++); //输 ...

  10. py3.7安装Scrapy及安装时的 Running setup.py install for Twisted ... error 和安装后的 Unhandled error in Deferred:

    1.首先,win+r 进入cmd,打开命令提示符,输入  pip install scrapy  等待自动安装: 2.到了后半段会出现  Running setup.py install for Tw ...