传统的可视化gydF4y2Ba

本文描述了传统砖可视化。看到gydF4y2Ba可视化在数据砖笔记本gydF4y2Ba目前可视化支持。gydF4y2Ba

砖还提供本机支持可视化的图书馆在Python和R和允许您安装和使用第三方库。gydF4y2Ba

创建一个遗留的可视化gydF4y2Ba

创建一个细胞遗留的可视化结果,点击gydF4y2Ba+gydF4y2Ba并选择gydF4y2Ba遗留的可视化gydF4y2Ba。gydF4y2Ba

遗留可视化支持一组丰富的图表类型:gydF4y2Ba

图表类型gydF4y2Ba

选择和配置一个遗留图表类型gydF4y2Ba

选择一个条形图,单击条形图图标gydF4y2Ba图表按钮gydF4y2Ba:gydF4y2Ba

条形图的图标gydF4y2Ba

选择另一个情节类型,点击gydF4y2Ba纽扣gydF4y2Ba右边的条形图gydF4y2Ba图表按钮gydF4y2Ba并选择情节类型。gydF4y2Ba

遗留的图表工具栏gydF4y2Ba

线和条形图都有一个内置的工具栏,支持一组丰富的客户端交互。gydF4y2Ba

图工具栏gydF4y2Ba

配置一个图表,请点击gydF4y2Ba情节选项…gydF4y2Ba。gydF4y2Ba

绘图选项gydF4y2Ba

折线图有几个自定义图表选项:设置轴范围,显示和隐藏点,用对数尺度和显示y轴。gydF4y2Ba

遗留的信息图表类型,请参阅:gydF4y2Ba

颜色一致性图表gydF4y2Ba

砖支持两种颜色一致性遗留图表:系列和全球。gydF4y2Ba

系列组gydF4y2Ba颜色一致性分配相同的颜色,相同的值如果你有系列相同的值,但在不同的订单(例如,=gydF4y2Ba["苹果",gydF4y2Ba“橙色”,gydF4y2Ba“香蕉”)gydF4y2Ba和B =gydF4y2Ba["橙色",gydF4y2Ba“香蕉”,gydF4y2Ba“苹果”)gydF4y2Ba)。绘图前值排序,所以传说都是排序相同的方式(gydF4y2Ba["苹果",gydF4y2Ba“香蕉”,gydF4y2Ba“橙色”)gydF4y2Ba),相同的值相同的颜色。然而,如果您有一系列C =gydF4y2Ba["橙色",gydF4y2Ba“香蕉”)gydF4y2Ba,它不会颜色符合设定一套,因为并不是一样的。排序算法将分配第一个颜色的“香蕉”集C但是第二颜色的“香蕉”答:如果你想要这些系列的颜色一致,可以指定颜色图表应该全球一致性。gydF4y2Ba

在gydF4y2Ba全球gydF4y2Ba颜色一致性,每个值总是映射到相同的颜色系列无论什么样的价值观。为每个图表,启用这个选择gydF4y2Ba全球颜色一致性gydF4y2Ba复选框。gydF4y2Ba

全球颜色一致性gydF4y2Ba

请注意gydF4y2Ba

为了实现这种一致性,砖直接散列值的颜色。避免碰撞(两个值去相同的颜色),哈希是一个大的颜色,有副作用,好看的或易于分辨颜色无法保证;有许多颜色必定有一些看起来非常相似。gydF4y2Ba

机器学习的可视化gydF4y2Ba

除了标准的图表类型、遗留可视化支持以下机器学习训练参数和结果:gydF4y2Ba

残差gydF4y2Ba

对于线性和逻辑回归,可以呈现一个gydF4y2Ba安装与残差gydF4y2Ba情节。为了获得这一情节,供应模型和DataFrame。gydF4y2Ba

下面的例子运行一个线性回归城市人口对房屋销售价格的数据,然后显示残差和安装数据。gydF4y2Ba

#加载数据gydF4y2Bapop_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2BacsvgydF4y2Ba(gydF4y2Ba“/ databricks-datasets /样本/ population-vs-price / data_geo.csv”gydF4y2Ba,gydF4y2Ba头gydF4y2Ba=gydF4y2Ba“真正的”gydF4y2Ba,gydF4y2BainferSchemagydF4y2Ba=gydF4y2Ba“真正的”gydF4y2Ba)gydF4y2Ba#删除行用缺失值和重命名功能和标签列,用_代替空间gydF4y2Ba从gydF4y2Bapyspark.sql.functionsgydF4y2Ba进口gydF4y2Ba上校gydF4y2Bapop_dfgydF4y2Ba=gydF4y2Bapop_dfgydF4y2Ba。gydF4y2BadropnagydF4y2Ba()gydF4y2Ba#行用缺失值下降gydF4y2BaexprsgydF4y2Ba=gydF4y2Ba(gydF4y2Ba上校gydF4y2Ba(gydF4y2Ba列gydF4y2Ba)gydF4y2Ba。gydF4y2Ba别名gydF4y2Ba(gydF4y2Ba列gydF4y2Ba。gydF4y2Ba取代gydF4y2Ba(gydF4y2Ba' 'gydF4y2Ba,gydF4y2Ba“_”gydF4y2Ba))gydF4y2Ba为gydF4y2Ba列gydF4y2Ba在gydF4y2Bapop_dfgydF4y2Ba。gydF4y2Ba列gydF4y2Ba]gydF4y2Ba#注册一个UDF转换特性(2014 _population_estimate)列向量VectorUDT类型和应用列。gydF4y2Ba从gydF4y2Bapyspark.ml.linalggydF4y2Ba进口gydF4y2Ba向量gydF4y2Ba,gydF4y2BaVectorUDTgydF4y2Ba火花gydF4y2Ba。gydF4y2BaudfgydF4y2Ba。gydF4y2Ba注册gydF4y2Ba(gydF4y2Ba“oneElementVec”gydF4y2Ba,gydF4y2BaλgydF4y2BadgydF4y2Ba:gydF4y2Ba向量gydF4y2Ba。gydF4y2Ba密集的gydF4y2Ba([gydF4y2BadgydF4y2Ba]),gydF4y2BareturnTypegydF4y2Ba=gydF4y2BaVectorUDTgydF4y2Ba())gydF4y2BatdatagydF4y2Ba=gydF4y2Bapop_dfgydF4y2Ba。gydF4y2Ba选择gydF4y2Ba(gydF4y2Ba*gydF4y2BaexprsgydF4y2Ba)gydF4y2Ba。gydF4y2BaselectExprgydF4y2Ba(gydF4y2Ba“oneElementVec (2014 _population_estimate)功能”gydF4y2Ba,gydF4y2Ba“2015 _median_sales_price标签”gydF4y2Ba)gydF4y2Ba#进行线性回归gydF4y2Ba从gydF4y2Bapyspark.ml.regressiongydF4y2Ba进口gydF4y2BaLinearRegressiongydF4y2BalrgydF4y2Ba=gydF4y2BaLinearRegressiongydF4y2Ba()gydF4y2Ba模型gydF4y2Ba=gydF4y2BalrgydF4y2Ba。gydF4y2Ba适合gydF4y2Ba(gydF4y2BatdatagydF4y2Ba,gydF4y2Ba{gydF4y2BalrgydF4y2Ba。gydF4y2BaregParamgydF4y2Ba:gydF4y2Ba0.0gydF4y2Ba})gydF4y2Ba#情节残差和安装数据gydF4y2Ba显示gydF4y2Ba(gydF4y2Ba模型gydF4y2Ba,gydF4y2BatdatagydF4y2Ba)gydF4y2Ba
显示残差gydF4y2Ba

ROC曲线gydF4y2Ba

对于逻辑回归,可以呈现一个gydF4y2Ba中华民国gydF4y2Ba曲线。获得该地块,准备供应模型,数据的输入gydF4y2Ba适合gydF4y2Ba方法和参数gydF4y2Ba“中华民国”gydF4y2Ba。gydF4y2Ba

下面的示例开发一个分类器预测如果一个人收入< = 50 k或> 50 k每年从个人的各种属性。成年人的数据集来自人口普查数据,包括48842人的信息和他们的年度收入。gydF4y2Ba

本节中的示例代码使用一个炎热的编码。gydF4y2Ba

#这段代码使用一个炎热的编码将所有分类变量转换成二进制向量。gydF4y2Ba模式gydF4y2Ba=gydF4y2Ba”“”“年龄”双,gydF4y2Ba“workclass”字符串,gydF4y2Ba“fnlwgt”双,gydF4y2Ba“教育”的字符串,gydF4y2Ba“education_num”双,gydF4y2Ba“marital_status”字符串,gydF4y2Ba“占领”字符串,gydF4y2Ba“关系”的字符串,gydF4y2Ba“种族”的字符串,gydF4y2Ba“性”的字符串,gydF4y2Ba“capital_gain”双,gydF4y2Ba“capital_loss”双,gydF4y2Ba“hours_per_week”双,gydF4y2Ba“native_country”字符串,gydF4y2Ba“收入”字符串" " "gydF4y2Ba数据集gydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2BacsvgydF4y2Ba(gydF4y2Ba“databricks-datasets /成人/ adult.data”gydF4y2Ba,gydF4y2Ba模式gydF4y2Ba=gydF4y2Ba模式gydF4y2Ba)gydF4y2Ba从gydF4y2Bapyspark.mlgydF4y2Ba进口gydF4y2Ba管道gydF4y2Ba从gydF4y2Bapyspark.ml.featuregydF4y2Ba进口gydF4y2BaOneHotEncodergydF4y2Ba,gydF4y2BaStringIndexergydF4y2Ba,gydF4y2BaVectorAssemblergydF4y2BacategoricalColumnsgydF4y2Ba=gydF4y2Ba(gydF4y2Ba“workclass”gydF4y2Ba,gydF4y2Ba“教育”gydF4y2Ba,gydF4y2Ba“marital_status”gydF4y2Ba,gydF4y2Ba“占领”gydF4y2Ba,gydF4y2Ba“关系”gydF4y2Ba,gydF4y2Ba“种族”gydF4y2Ba,gydF4y2Ba“性”gydF4y2Ba,gydF4y2Ba“native_country”gydF4y2Ba]gydF4y2Ba阶段gydF4y2Ba=gydF4y2Ba[]gydF4y2Ba#阶段的管道gydF4y2Ba为gydF4y2BacategoricalColgydF4y2Ba在gydF4y2BacategoricalColumnsgydF4y2Ba:gydF4y2Ba#与StringIndexer类别索引gydF4y2BastringIndexergydF4y2Ba=gydF4y2BaStringIndexergydF4y2Ba(gydF4y2BainputColgydF4y2Ba=gydF4y2BacategoricalColgydF4y2Ba,gydF4y2BaoutputColgydF4y2Ba=gydF4y2BacategoricalColgydF4y2Ba+gydF4y2Ba“指数”gydF4y2Ba)gydF4y2Ba#使用OneHotEncoder分类变量转换成二进制SparseVectorsgydF4y2Ba编码器gydF4y2Ba=gydF4y2BaOneHotEncodergydF4y2Ba(gydF4y2BainputColsgydF4y2Ba=gydF4y2Ba(gydF4y2BastringIndexergydF4y2Ba。gydF4y2BagetOutputColgydF4y2Ba()),gydF4y2BaoutputColsgydF4y2Ba=gydF4y2Ba(gydF4y2BacategoricalColgydF4y2Ba+gydF4y2Ba“classVec”gydF4y2Ba])gydF4y2Ba#添加阶段。这些都不是在这里运行,但运行一次。gydF4y2Ba阶段gydF4y2Ba+ =gydF4y2Ba(gydF4y2BastringIndexergydF4y2Ba,gydF4y2Ba编码器gydF4y2Ba]gydF4y2Ba#标签转换成标签使用StringIndexer指数gydF4y2Balabel_stringIdxgydF4y2Ba=gydF4y2BaStringIndexergydF4y2Ba(gydF4y2BainputColgydF4y2Ba=gydF4y2Ba“收入”gydF4y2Ba,gydF4y2BaoutputColgydF4y2Ba=gydF4y2Ba“标签”gydF4y2Ba)gydF4y2Ba阶段gydF4y2Ba+ =gydF4y2Ba(gydF4y2Balabel_stringIdxgydF4y2Ba]gydF4y2Ba#使用VectorAssembler所有功能转换成一个向量gydF4y2BanumericColsgydF4y2Ba=gydF4y2Ba(gydF4y2Ba“年龄”gydF4y2Ba,gydF4y2Ba“fnlwgt”gydF4y2Ba,gydF4y2Ba“education_num”gydF4y2Ba,gydF4y2Ba“capital_gain”gydF4y2Ba,gydF4y2Ba“capital_loss”gydF4y2Ba,gydF4y2Ba“hours_per_week”gydF4y2Ba]gydF4y2BaassemblerInputsgydF4y2Ba=gydF4y2Ba(gydF4y2BacgydF4y2Ba+gydF4y2Ba“classVec”gydF4y2Ba为gydF4y2BacgydF4y2Ba在gydF4y2BacategoricalColumnsgydF4y2Ba]gydF4y2Ba+gydF4y2BanumericColsgydF4y2Ba汇编程序gydF4y2Ba=gydF4y2BaVectorAssemblergydF4y2Ba(gydF4y2BainputColsgydF4y2Ba=gydF4y2BaassemblerInputsgydF4y2Ba,gydF4y2BaoutputColgydF4y2Ba=gydF4y2Ba“特征”gydF4y2Ba)gydF4y2Ba阶段gydF4y2Ba+ =gydF4y2Ba(gydF4y2Ba汇编程序gydF4y2Ba]gydF4y2Ba#作为一个管道运行阶段。这让数据通过所有功能转换的一个电话。gydF4y2BapartialPipelinegydF4y2Ba=gydF4y2Ba管道gydF4y2Ba()gydF4y2Ba。gydF4y2BasetStagesgydF4y2Ba(gydF4y2Ba阶段gydF4y2Ba)gydF4y2BapipelineModelgydF4y2Ba=gydF4y2BapartialPipelinegydF4y2Ba。gydF4y2Ba适合gydF4y2Ba(gydF4y2Ba数据集gydF4y2Ba)gydF4y2BapreppedDataDFgydF4y2Ba=gydF4y2BapipelineModelgydF4y2Ba。gydF4y2Ba变换gydF4y2Ba(gydF4y2Ba数据集gydF4y2Ba)gydF4y2Ba#符合逻辑回归模型gydF4y2Ba从gydF4y2Bapyspark.ml.classificationgydF4y2Ba进口gydF4y2BaLogisticRegressiongydF4y2BalrModelgydF4y2Ba=gydF4y2BaLogisticRegressiongydF4y2Ba()gydF4y2Ba。gydF4y2Ba适合gydF4y2Ba(gydF4y2BapreppedDataDFgydF4y2Ba)gydF4y2Ba#中华民国为数据gydF4y2Ba显示gydF4y2Ba(gydF4y2BalrModelgydF4y2Ba,gydF4y2BapreppedDataDFgydF4y2Ba,gydF4y2Ba“中华民国”gydF4y2Ba)gydF4y2Ba
展示中华民国gydF4y2Ba

显示残差,省略了gydF4y2Ba“中华民国”gydF4y2Ba参数:gydF4y2Ba

显示gydF4y2Ba(gydF4y2BalrModelgydF4y2Ba,gydF4y2BapreppedDataDFgydF4y2Ba)gydF4y2Ba
显示逻辑回归残差gydF4y2Ba

决策树gydF4y2Ba

遗产呈现决策树可视化支持。gydF4y2Ba

要获得这样的可视化,供应决策树模型。gydF4y2Ba

下面的例子训练树识别数字(0 - 9)MNIST数据集的手写数字图像,然后显示树。gydF4y2Ba

trainingDFgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“libsvm”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba负载gydF4y2Ba(gydF4y2Ba“/ databricks-datasets / mnist-digits /数据- 001 / mnist-digits-train.txt”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba缓存gydF4y2Ba()gydF4y2BatestDFgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“libsvm”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba负载gydF4y2Ba(gydF4y2Ba“/ databricks-datasets / mnist-digits /数据- 001 / mnist-digits-test.txt”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba缓存gydF4y2Ba()gydF4y2Ba从gydF4y2Bapyspark.ml.classificationgydF4y2Ba进口gydF4y2BaDecisionTreeClassifiergydF4y2Ba从gydF4y2Bapyspark.ml.featuregydF4y2Ba进口gydF4y2BaStringIndexergydF4y2Ba从gydF4y2Bapyspark.mlgydF4y2Ba进口gydF4y2Ba管道gydF4y2Ba索引器gydF4y2Ba=gydF4y2BaStringIndexergydF4y2Ba()gydF4y2Ba。gydF4y2BasetInputColgydF4y2Ba(gydF4y2Ba“标签”gydF4y2Ba)gydF4y2Ba。gydF4y2BasetOutputColgydF4y2Ba(gydF4y2Ba“indexedLabel”gydF4y2Ba)gydF4y2Ba直接转矩gydF4y2Ba=gydF4y2BaDecisionTreeClassifiergydF4y2Ba()gydF4y2Ba。gydF4y2BasetLabelColgydF4y2Ba(gydF4y2Ba“indexedLabel”gydF4y2Ba)gydF4y2Ba#链索引器+ dtc组合进一个毫升管道。gydF4y2Ba管道gydF4y2Ba=gydF4y2Ba管道gydF4y2Ba()gydF4y2Ba。gydF4y2BasetStagesgydF4y2Ba([gydF4y2Ba索引器gydF4y2Ba,gydF4y2Ba直接转矩gydF4y2Ba])gydF4y2Ba模型gydF4y2Ba=gydF4y2Ba管道gydF4y2Ba。gydF4y2Ba适合gydF4y2Ba(gydF4y2BatrainingDFgydF4y2Ba)gydF4y2Ba显示gydF4y2Ba(gydF4y2Ba模型gydF4y2Ba。gydF4y2Ba阶段gydF4y2Ba(gydF4y2Ba- - - - - -gydF4y2Ba1gydF4y2Ba])gydF4y2Ba
瓦尔gydF4y2BatrainingDFgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“libsvm”gydF4y2Ba)。gydF4y2Ba负载gydF4y2Ba(gydF4y2Ba“/ databricks-datasets / mnist-digits /数据- 001 / mnist-digits-train.txt”gydF4y2Ba)。gydF4y2Ba缓存gydF4y2Ba瓦尔gydF4y2BatestDFgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“libsvm”gydF4y2Ba)。gydF4y2Ba负载gydF4y2Ba(gydF4y2Ba“/ databricks-datasets / mnist-digits /数据- 001 / mnist-digits-test.txt”gydF4y2Ba)。gydF4y2Ba缓存gydF4y2Ba进口gydF4y2BaorggydF4y2Ba。gydF4y2BaapachegydF4y2Ba。gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba毫升gydF4y2Ba。gydF4y2Ba分类gydF4y2Ba。{gydF4y2BaDecisionTreeClassifiergydF4y2Ba,gydF4y2BaDecisionTreeClassificationModelgydF4y2Ba}gydF4y2Ba进口gydF4y2BaorggydF4y2Ba。gydF4y2BaapachegydF4y2Ba。gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba毫升gydF4y2Ba。gydF4y2Ba功能gydF4y2Ba。gydF4y2BaStringIndexergydF4y2Ba进口gydF4y2BaorggydF4y2Ba。gydF4y2BaapachegydF4y2Ba。gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba毫升gydF4y2Ba。gydF4y2Ba管道gydF4y2Ba瓦尔gydF4y2Ba索引器gydF4y2Ba=gydF4y2Ba新gydF4y2BaStringIndexergydF4y2Ba()。gydF4y2BasetInputColgydF4y2Ba(gydF4y2Ba“标签”gydF4y2Ba)。gydF4y2BasetOutputColgydF4y2Ba(gydF4y2Ba“indexedLabel”gydF4y2Ba)gydF4y2Ba瓦尔gydF4y2Ba直接转矩gydF4y2Ba=gydF4y2Ba新gydF4y2BaDecisionTreeClassifiergydF4y2Ba()。gydF4y2BasetLabelColgydF4y2Ba(gydF4y2Ba“indexedLabel”gydF4y2Ba)gydF4y2Ba瓦尔gydF4y2Ba管道gydF4y2Ba=gydF4y2Ba新gydF4y2Ba管道gydF4y2Ba()。gydF4y2BasetStagesgydF4y2Ba(gydF4y2Ba数组gydF4y2Ba(gydF4y2Ba索引器gydF4y2Ba,gydF4y2Ba直接转矩gydF4y2Ba))gydF4y2Ba瓦尔gydF4y2Ba模型gydF4y2Ba=gydF4y2Ba管道gydF4y2Ba。gydF4y2Ba适合gydF4y2Ba(gydF4y2BatrainingDFgydF4y2Ba)gydF4y2Ba瓦尔gydF4y2Ba树gydF4y2Ba=gydF4y2Ba模型gydF4y2Ba。gydF4y2Ba阶段gydF4y2Ba。gydF4y2Ba去年gydF4y2Ba。gydF4y2BaasInstanceOfgydF4y2Ba(gydF4y2BaDecisionTreeClassificationModelgydF4y2Ba]gydF4y2Ba显示gydF4y2Ba(gydF4y2Ba树gydF4y2Ba)gydF4y2Ba
显示决策树gydF4y2Ba

结构化流DataFramesgydF4y2Ba

可视化流媒体实时查询的结果gydF4y2Ba显示gydF4y2BaScala中的结构化流DataFrame和Python。gydF4y2Ba

streaming_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2BareadStreamgydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“速度”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba负载gydF4y2Ba()gydF4y2Ba显示gydF4y2Ba(gydF4y2Bastreaming_dfgydF4y2Ba。gydF4y2BagroupBygydF4y2Ba()gydF4y2Ba。gydF4y2Ba数gydF4y2Ba())gydF4y2Ba
瓦尔gydF4y2Bastreaming_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2BareadStreamgydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“速度”gydF4y2Ba)。gydF4y2Ba负载gydF4y2Ba()gydF4y2Ba显示gydF4y2Ba(gydF4y2Bastreaming_dfgydF4y2Ba。gydF4y2BagroupBygydF4y2Ba()。gydF4y2Ba数gydF4y2Ba())gydF4y2Ba

显示gydF4y2Ba支持以下可选参数:gydF4y2Ba

  • streamNamegydF4y2Ba:流媒体查询名称。gydF4y2Ba

  • 触发gydF4y2Ba(Scala)和gydF4y2BaprocessingTimegydF4y2Ba(Python):定义了流查询频率运行。如果没有指定,系统检查可用性的前处理新数据尽快完成。在生产中降低成本,砖建议你gydF4y2Ba总是gydF4y2Ba设置一个触发间隔。砖运行时的8.0及以上,默认触发间隔是500 ms。gydF4y2Ba

  • checkpointLocationgydF4y2Ba:系统写所有检查点的位置信息。如果没有指定,系统自动生成一个临时DBFS检查点位置。为了你流继续处理数据的地方重新开始,你必须提供一个检查点位置。砖生产建议你gydF4y2Ba总是gydF4y2Ba指定gydF4y2BacheckpointLocationgydF4y2Ba选择。gydF4y2Ba

streaming_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2BareadStreamgydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“速度”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba负载gydF4y2Ba()gydF4y2Ba显示gydF4y2Ba(gydF4y2Bastreaming_dfgydF4y2Ba。gydF4y2BagroupBygydF4y2Ba()gydF4y2Ba。gydF4y2Ba数gydF4y2Ba(),gydF4y2BaprocessingTimegydF4y2Ba=gydF4y2Ba“5秒”gydF4y2Ba,gydF4y2BacheckpointLocationgydF4y2Ba=gydF4y2Ba“dbfs: / < checkpoint-path >”gydF4y2Ba)gydF4y2Ba
进口gydF4y2BaorggydF4y2Ba。gydF4y2BaapachegydF4y2Ba。gydF4y2Ba火花gydF4y2Ba。gydF4y2BasqlgydF4y2Ba。gydF4y2Ba流媒体gydF4y2Ba。gydF4y2Ba触发gydF4y2Ba瓦尔gydF4y2Bastreaming_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2BareadStreamgydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“速度”gydF4y2Ba)。gydF4y2Ba负载gydF4y2Ba()gydF4y2Ba显示gydF4y2Ba(gydF4y2Bastreaming_dfgydF4y2Ba。gydF4y2BagroupBygydF4y2Ba()。gydF4y2Ba数gydF4y2Ba(),gydF4y2Ba触发gydF4y2Ba=gydF4y2Ba触发gydF4y2Ba。gydF4y2BaProcessingTimegydF4y2Ba(gydF4y2Ba“5秒”gydF4y2Ba),gydF4y2BacheckpointLocationgydF4y2Ba=gydF4y2Ba“dbfs: / < checkpoint-path >”gydF4y2Ba)gydF4y2Ba

关于这些参数的更多信息,请参阅gydF4y2Ba开始流查询gydF4y2Ba。gydF4y2Ba

displayHTMLgydF4y2Ba函数gydF4y2Ba

砖的编程语言的笔记本(Python, R, Scala)支持HTML图形使用gydF4y2BadisplayHTMLgydF4y2Ba函数;您可以通过函数的任何HTML、CSS或JavaScript代码。这个函数支持交互式图形使用JavaScript库(如D3。gydF4y2Ba

使用的例子gydF4y2BadisplayHTMLgydF4y2Ba,请参阅:gydF4y2Ba

请注意gydF4y2Ba

的gydF4y2BadisplayHTMLgydF4y2Baiframe是服务的领域gydF4y2Badatabricksusercontent.comgydF4y2Ba和iframe沙箱包括gydF4y2Baallow-same-origingydF4y2Ba属性。gydF4y2Badatabricksusercontent.comgydF4y2Ba必须从浏览器访问。如果现在被你的公司网络,它必须被添加到一个允许列表。gydF4y2Ba

图片gydF4y2Ba

列包含图像数据类型呈现HTML一样富有。砖试图呈现图像的缩略图gydF4y2BaDataFramegydF4y2Ba列匹配的火花gydF4y2BaImageSchemagydF4y2Ba。适用于任何图片缩略图呈现在通过成功地阅读gydF4y2Baspark.read.format('图像')gydF4y2Ba函数。图像值的生成通过其他手段,砖支持渲染的1、3或4通道图像(每个通道由一个字节),以下约束:gydF4y2Ba

  • 一个通道的图像gydF4y2Ba:gydF4y2Ba模式gydF4y2Ba字段必须是0。gydF4y2Ba高度gydF4y2Ba,gydF4y2Ba宽度gydF4y2Ba,gydF4y2BanChannelsgydF4y2Ba字段必须准确地描述的二进制图像数据gydF4y2Ba数据gydF4y2Ba字段。gydF4y2Ba

  • 三通道的图片gydF4y2Ba:gydF4y2Ba模式gydF4y2Ba字段必须等于16。gydF4y2Ba高度gydF4y2Ba,gydF4y2Ba宽度gydF4y2Ba,gydF4y2BanChannelsgydF4y2Ba字段必须准确地描述的二进制图像数据gydF4y2Ba数据gydF4y2Ba字段。的gydF4y2Ba数据gydF4y2Ba在三个字节的字段必须包含像素数据块,与频道排序gydF4y2Ba(蓝色、gydF4y2Ba绿色,gydF4y2Ba红色)gydF4y2Ba对于每一个像素。gydF4y2Ba

  • 四通道图像gydF4y2Ba:gydF4y2Ba模式gydF4y2Ba字段必须等于24。gydF4y2Ba高度gydF4y2Ba,gydF4y2Ba宽度gydF4y2Ba,gydF4y2BanChannelsgydF4y2Ba字段必须准确地描述的二进制图像数据gydF4y2Ba数据gydF4y2Ba字段。的gydF4y2Ba数据gydF4y2Ba4字节块字段必须包含像素数据,该频道排序gydF4y2Ba(蓝色、gydF4y2Ba绿色,gydF4y2Ba红色,gydF4y2Baα)gydF4y2Ba对于每一个像素。gydF4y2Ba

例子gydF4y2Ba

假设你有一个文件夹,其中包含一些图片:gydF4y2Ba

文件夹的图像数据gydF4y2Ba

如果你读图像到一个DataFrame然后显示DataFrame,砖呈现图像的缩略图:gydF4y2Ba

image_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“图像”gydF4y2Ba)gydF4y2Ba。gydF4y2Ba负载gydF4y2Ba(gydF4y2Basample_img_dirgydF4y2Ba)gydF4y2Ba显示gydF4y2Ba(gydF4y2Baimage_dfgydF4y2Ba)gydF4y2Ba
显示图象DataFramegydF4y2Ba

在Python中可视化gydF4y2Ba

SeaborngydF4y2Ba

您还可以使用其他Python库生成的阴谋。砖运行时包含了gydF4y2BaseaborngydF4y2Ba可视化的图书馆。创建一个seaborn情节,导入库,创建一个情节,并通过情节的gydF4y2Ba显示gydF4y2Ba函数。gydF4y2Ba

进口gydF4y2BaseaborngydF4y2Ba作为gydF4y2BasnsgydF4y2BasnsgydF4y2Ba。gydF4y2Ba集gydF4y2Ba(gydF4y2Ba风格gydF4y2Ba=gydF4y2Ba“白色”gydF4y2Ba)gydF4y2BadfgydF4y2Ba=gydF4y2BasnsgydF4y2Ba。gydF4y2Baload_datasetgydF4y2Ba(gydF4y2Ba“爱丽丝”gydF4y2Ba)gydF4y2BaggydF4y2Ba=gydF4y2BasnsgydF4y2Ba。gydF4y2BaPairGridgydF4y2Ba(gydF4y2BadfgydF4y2Ba,gydF4y2Badiag_shareygydF4y2Ba=gydF4y2Ba假gydF4y2Ba)gydF4y2BaggydF4y2Ba。gydF4y2Bamap_lowergydF4y2Ba(gydF4y2BasnsgydF4y2Ba。gydF4y2BakdeplotgydF4y2Ba)gydF4y2BaggydF4y2Ba。gydF4y2Bamap_diaggydF4y2Ba(gydF4y2BasnsgydF4y2Ba。gydF4y2BakdeplotgydF4y2Ba,gydF4y2BalwgydF4y2Ba=gydF4y2Ba3gydF4y2Ba)gydF4y2BaggydF4y2Ba。gydF4y2Bamap_uppergydF4y2Ba(gydF4y2BasnsgydF4y2Ba。gydF4y2BaregplotgydF4y2Ba)gydF4y2Ba显示gydF4y2Ba(gydF4y2BaggydF4y2Ba。gydF4y2Ba无花果gydF4y2Ba)gydF4y2Ba
Seaborn情节gydF4y2Ba

在R中可视化gydF4y2Ba

在R,绘制数据使用gydF4y2Ba显示gydF4y2Ba函数如下:gydF4y2Ba

图书馆gydF4y2Ba(gydF4y2BaSparkRgydF4y2Ba)gydF4y2Badiamonds_dfgydF4y2Ba< -gydF4y2Baread.dfgydF4y2Ba(gydF4y2Ba“/ databricks-datasets / Rdatasets /数据- 001 / csv / ggplot2 / diamonds.csv”gydF4y2Ba,gydF4y2Ba源gydF4y2Ba=gydF4y2Ba“csv”gydF4y2Ba,gydF4y2Ba头gydF4y2Ba=gydF4y2Ba“真正的”gydF4y2Ba,gydF4y2BainferSchemagydF4y2Ba=gydF4y2Ba“真正的”gydF4y2Ba)gydF4y2Ba显示gydF4y2Ba(gydF4y2Ba安排gydF4y2Ba(gydF4y2BagggydF4y2Ba(gydF4y2BagroupBygydF4y2Ba(gydF4y2Badiamonds_dfgydF4y2Ba,gydF4y2Ba“颜色”gydF4y2Ba),gydF4y2Ba“价格”gydF4y2Ba=gydF4y2Ba“平均”gydF4y2Ba),gydF4y2Ba“颜色”gydF4y2Ba))gydF4y2Ba

您可以使用默认的RgydF4y2Ba情节gydF4y2Ba函数。gydF4y2Ba

适合gydF4y2Ba< -gydF4y2BalmgydF4y2Ba(gydF4y2BaPetal.LengthgydF4y2Ba~gydF4y2Ba。gydF4y2Ba,gydF4y2Ba数据gydF4y2Ba=gydF4y2Ba虹膜gydF4y2Ba)gydF4y2Ba布局gydF4y2Ba(gydF4y2Ba矩阵gydF4y2Ba(gydF4y2BacgydF4y2Ba(gydF4y2Ba1gydF4y2Ba,gydF4y2Ba2gydF4y2Ba,gydF4y2Ba3gydF4y2Ba,gydF4y2Ba4gydF4y2Ba),gydF4y2Ba2gydF4y2Ba,gydF4y2Ba2gydF4y2Ba))gydF4y2Ba#可选4图/页面gydF4y2Ba情节gydF4y2Ba(gydF4y2Ba适合gydF4y2Ba)gydF4y2Ba
R违约情节gydF4y2Ba

您还可以使用任何R可视化方案。作为一个R笔记本捕获产生的阴谋gydF4y2Ba. pnggydF4y2Ba并显示它内联。gydF4y2Ba

晶格gydF4y2Ba

的gydF4y2Ba晶格gydF4y2Ba包支持格子graphs-graphs显示变量或变量之间的关系,条件在一个或多个其他变量。gydF4y2Ba

图书馆gydF4y2Ba(gydF4y2Ba晶格gydF4y2Ba)gydF4y2BaxyplotgydF4y2Ba(gydF4y2Ba价格gydF4y2Ba~gydF4y2Ba克拉gydF4y2Ba|gydF4y2Ba减少gydF4y2Ba,gydF4y2Ba钻石gydF4y2Ba,gydF4y2Ba尺度gydF4y2Ba=gydF4y2Ba列表gydF4y2Ba(gydF4y2Ba日志gydF4y2Ba=gydF4y2Ba真正的gydF4y2Ba),gydF4y2Ba类型gydF4y2Ba=gydF4y2BacgydF4y2Ba(gydF4y2Ba“p”gydF4y2Ba,gydF4y2Ba“g”gydF4y2Ba,gydF4y2Ba“顺利”gydF4y2Ba),gydF4y2BaylabgydF4y2Ba=gydF4y2Ba“日志价格”gydF4y2Ba)gydF4y2Ba
R点阵图gydF4y2Ba

DandEFAgydF4y2Ba

的gydF4y2BaDandEFAgydF4y2Ba包支持蒲公英的阴谋。gydF4y2Ba

install.packagesgydF4y2Ba(gydF4y2Ba“DandEFA”gydF4y2Ba,gydF4y2Ba回购gydF4y2Ba=gydF4y2Ba“https://cran.us.r-project.org”gydF4y2Ba)gydF4y2Ba图书馆gydF4y2Ba(gydF4y2BaDandEFAgydF4y2Ba)gydF4y2Ba数据gydF4y2Ba(gydF4y2Batimss2011gydF4y2Ba)gydF4y2Batimss2011gydF4y2Ba< -gydF4y2Bana.omitgydF4y2Ba(gydF4y2Batimss2011gydF4y2Ba)gydF4y2BadandpalgydF4y2Ba< -gydF4y2Ba牧师gydF4y2Ba(gydF4y2Ba彩虹gydF4y2Ba(gydF4y2BaOne hundred.gydF4y2Ba,gydF4y2Ba开始gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba结束gydF4y2Ba=gydF4y2Ba0.2gydF4y2Ba))gydF4y2BafaclgydF4y2Ba< -gydF4y2BafactloadgydF4y2Ba(gydF4y2Batimss2011gydF4y2Ba,gydF4y2BanfacgydF4y2Ba=gydF4y2Ba5gydF4y2Ba,gydF4y2Ba方法gydF4y2Ba=gydF4y2Ba“普凯投资”gydF4y2Ba,gydF4y2BacormethgydF4y2Ba=gydF4y2Ba“枪兵”gydF4y2Ba)gydF4y2Ba蒲公英gydF4y2Ba(gydF4y2BafaclgydF4y2Ba,gydF4y2Ba绑定gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BamcexgydF4y2Ba=gydF4y2BacgydF4y2Ba(gydF4y2Ba1gydF4y2Ba,gydF4y2Ba1.2gydF4y2Ba),gydF4y2Ba一直gydF4y2Ba=gydF4y2BadandpalgydF4y2Ba)gydF4y2BafaclgydF4y2Ba< -gydF4y2BafactloadgydF4y2Ba(gydF4y2Batimss2011gydF4y2Ba,gydF4y2BanfacgydF4y2Ba=gydF4y2Ba8gydF4y2Ba,gydF4y2Ba方法gydF4y2Ba=gydF4y2Ba“初速”gydF4y2Ba,gydF4y2BacormethgydF4y2Ba=gydF4y2Ba“皮尔森”gydF4y2Ba)gydF4y2Ba蒲公英gydF4y2Ba(gydF4y2BafaclgydF4y2Ba,gydF4y2Ba绑定gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BamcexgydF4y2Ba=gydF4y2BacgydF4y2Ba(gydF4y2Ba1gydF4y2Ba,gydF4y2Ba1.2gydF4y2Ba),gydF4y2Ba一直gydF4y2Ba=gydF4y2BadandpalgydF4y2Ba)gydF4y2Ba
R DandEFA情节gydF4y2Ba

情节gydF4y2Ba

的gydF4y2Ba情节gydF4y2BaR包依赖于gydF4y2Bahtmlwidgets RgydF4y2Ba。安装说明和一个笔记本,看到的gydF4y2BahtmlwidgetsgydF4y2Ba。gydF4y2Ba

Scala中的可视化gydF4y2Ba

绘制数据在Scala中,使用gydF4y2Ba显示gydF4y2Ba函数如下:gydF4y2Ba

瓦尔gydF4y2Badiamonds_dfgydF4y2Ba=gydF4y2Ba火花gydF4y2Ba。gydF4y2Ba读gydF4y2Ba。gydF4y2Ba格式gydF4y2Ba(gydF4y2Ba“csv”gydF4y2Ba)。gydF4y2Ba选项gydF4y2Ba(gydF4y2Ba“头”gydF4y2Ba,gydF4y2Ba“真正的”gydF4y2Ba)。gydF4y2Ba选项gydF4y2Ba(gydF4y2Ba“inferSchema”gydF4y2Ba,gydF4y2Ba“真正的”gydF4y2Ba)。gydF4y2Ba负载gydF4y2Ba(gydF4y2Ba“/ databricks-datasets / Rdatasets /数据- 001 / csv / ggplot2 / diamonds.csv”gydF4y2Ba)gydF4y2Ba显示gydF4y2Ba(gydF4y2Badiamonds_dfgydF4y2Ba。gydF4y2BagroupBygydF4y2Ba(gydF4y2Ba“颜色”gydF4y2Ba)。gydF4y2BaavggydF4y2Ba(gydF4y2Ba“价格”gydF4y2Ba)。gydF4y2BaorderBygydF4y2Ba(gydF4y2Ba“颜色”gydF4y2Ba))gydF4y2Ba

深潜水Python和Scala的笔记本gydF4y2Ba

为深入了解Python可视化,看到笔记本:gydF4y2Ba

为深入了解Scala可视化,看到笔记本:gydF4y2Ba