为什么要创建网站子目录,python基础教程百度亿,1000套网站源码,制作网站软件教程上文介绍tablesaw的数据处理功能#xff0c;本文向你展示其数据可视化功能#xff0c;并通过几个常用图表示例进行说明。 Plot.ly包装
可视化是数据分析的重要组成部分#xff0c;无论你只是“查看”新数据集还是验证机器学习算法的结果。Tablesaw是一个开源、高性能的Java… 上文介绍tablesaw的数据处理功能本文向你展示其数据可视化功能并通过几个常用图表示例进行说明。 Plot.ly包装
可视化是数据分析的重要组成部分无论你只是“查看”新数据集还是验证机器学习算法的结果。Tablesaw是一个开源、高性能的Java“数据框架”也是一个用于转换数据以供分析的库。Tablesaw的新绘图框架提供了用Java为整个分析过程创建可视化的平台从最早的探索到最后的展示。
该框架提供了Java版本的Plot.ly开源JavaScript可视化库封装。Plot.ly基于出色的D3数据驱动文档框架Plot.ly非常好事实上它被广泛用于JavaScript以外的语言如Python和R虽然这些语言已经有了可靠的可视化选项。与其他语言一样tablesaw提供的包装器可以很容易地用纯Java构造图形并用HTML和JavaScript呈现它们。
加入依赖
dependencygroupIdtech.tablesaw/groupIdartifactIdtablesaw-core/artifactIdversion0.43.1/version
/dependency
!-- Tablesaw的绘图扩展用于数据可视化 --
!-- https://mvnrepository.com/artifact/tech.tablesaw/tablesaw-jsplot --
dependencygroupIdtech.tablesaw/groupIdartifactIdtablesaw-jsplot/artifactIdversion0.43.1/version
/dependency时间序列图示例 Table bush Table.read().csv(bush.csv);foxOnly bush.where(bush.stringColumn(who).equalsIgnoreCase(fox));Plot.show(TimeSeriesPlot.create(Fox approval ratings for George W. Bush, foxOnly,date, approval));
上面代码首先加载数据然后过滤数据。接着创建时间序列图create()方法包括四个参数分别为标题和数据后面两个参数分别指定x轴和有轴数据列。当然我们也可以分为两步实现首先创建图然后调用 Plot.show()方法显示图形 Figure foxPlot TimeSeriesPlot.create(George W. Bush approval ratings, foxOnly,date, approval);Plot.show(foxPlot);散点图示例
数据说明
Month,Record,Robberies
1966-01,1,41
1966-02,2,39
1966-03,3,50
1966-04,4,40
1966-05,5,43
1966-06,6,38
1966-07,7,44
1966-08,8,35
1966-09,9,39
1966-10,10,35
1966-11,11,29
1966-12,12,49
1967-01,13,50第一列是年月第二列是月份序号第三列是抢劫案发生次数。我们希望采用折线图方式展现数据。为了更好定义图形我们通过Layout 和 ScatterTrace两个类实现
Table robberies Table.read().csv(boston-robberies.csv);Layout layout Layout.builder(Boston Robberies by month: Jan 1966-Oct 1975,year, robberies).build();ScatterTrace trace ScatterTrace.builder(robberies.numberColumn(Record),robberies.numberColumn(Robberies)).mode(ScatterTrace.Mode.LINE).marker(Marker.builder().color(#3D9970).build()).fill(ScatterTrace.Fill.TO_NEXT_Y).build();Plot.show(new Figure(layout, trace));Layout 类的构建器模式来创建一个 Layout 实例。传递给构建器的参数 Boston Robberies by month: Jan 1966-Oct 1975 作为图形的标题year 和 robberies 这两个参数指定布局中坐标轴等相关元素比如横坐标可能对应 year纵坐标对应 robberies最后调用 build() 方法来生成实际的 Layout 对象该对象会定义可视化图形整体的布局结构。
使用 ScatterTrace 类的构建器模式创建 ScatterTrace 对象用于定义散点图相关的配置和数据绑定。在构建器的参数中通过 robberies.numberColumn(Record) 和 robberies.numberColumn(Robberies) 来指定散点图中数据对应的列这里分别获取名为 Record 和 Robberies 两列的数据。通过 .mode(ScatterTrace.Mode.LINE) 将散点图的展示模式设置为折线模式意味着这些散点会用线段依次连接起来形成折线图。
.marker(Marker.builder().color(#3D9970).build()) 这部分用于设置散点或者说折线图上数据点对应的标记的样式这里指定了颜色为 #3D9970是通过先创建一个 Marker 构建器对象设置颜色属性后再生成实际的 Marker 对象传递给 ScatterTrace 构建器。.fill(ScatterTrace.Fill.TO_NEXT_Y) 是在折线和下一个 Y 轴坐标范围之间进行填充操作然后调用 build() 方法完成 ScatterTrace 对象的构建这个对象包含了散点图折线模式下具体的数据和样式等配置信息。 k线图示例
每个时间点展示开盘价、最高和最低价、收盘价。
Table priceTable Table.read().csv(ohlcdata.csv);
Plot.show(OHLCPlot.create(Prices, priceTable, date, open, high, low, close));总结
本文介绍tablsesaw数据可视化功能包括引入依赖几个常用图表示例。更多内容可参考官方示例。