在JupyterHub for K8s的SuperMap iObjects Python简单教程,演示在JupyterHub的Notebook基本操做。函数
在Notebook中依次输入下面的内容,按shift+enter便可运行。测试
import iobjectspy as smo from iobjectspy import (aggregate_points, Unit) import os import sys
# 设置示例数据路径 example_data_dir = '/home/jovyan/data/smdata/' # 设置结果输出路径 out_dir = os.path.join(example_data_dir, 'out') print("Output dir: ", out_dir) if not os.path.exists(out_dir): os.makedirs(out_dir) print("Makedir: ", out_dir) else: print("Existed dir: ", out_dir)
Output dir: /home/jovyan/data/smdata/out Existed dir: /home/jovyan/data/smdata/out
os.path.exists("/home/jovyan/data/smdata/out")
True
!ls -l ~/data/smdata/out
total 98 -rw-r--r-- 1 jovyan root 2396 Jul 8 09:18 out_aggregate_point.udb -rw-r--r-- 1 jovyan root 67584 Jul 8 09:18 out_aggregate_point.udd -rw-r--r-- 1 jovyan root 0 Jul 8 09:16 out_import_data_county_p.udb -rw-r--r-- 1 jovyan root 29696 Jul 8 09:16 out_import_data_county_p.udd
def progress_func(step_event): sys.stdout.write('%s,%s %%\n' % (step_event.title, step_event.message)) def aggregate_points_test(): """ 对点数据集 Town_P 进行点密度聚类,密度聚类的聚类点数目阈值为4, 聚类半径为3 公里""" result = aggregate_points(os.path.join(example_data_dir, 'example_data.udb/Town_P'), 4, 3, Unit.KILOMETER, out_data=os.path.join(out_dir, 'out_aggregate_point.udb'), progress=progress_func) if result is not None: if isinstance(result, str): print('点密度聚类成功,结果面数据集为 ' + result) else: print('点密度聚类成功,结果面数据集为 ' + result.name) else: print('点密度聚类失败')
aggregate_points_test()
按shift+enter便可运行。spa
稍微等待,能够看到相应的输出。.net
而后到目录下去检查输出文件。code