python 读取全国城市aqi数据,差值生成png图片
2016-06-15 00:23
507 查看
# -*- coding: utf-8 -*- import arcpy import sys import datetime import cx_Oracle import json import os import time import uuid from arcpy import env from arcpy.sa import * env.workspace = r"F:\py"; mapPath = r"F:\py"; imagepath = r'F:\py\images\2016-06-07' arcpy.AddMessage("1.查询数据库"); cnxn = cx_Oracle.connect('jinan/jinan@127.0.0.1:1521/orcl') cursor = cnxn.cursor(); sql = "select citycode,aqi from city "; cursor.execute(sql); cursorData = cursor ; arcpy.AddMessage("2.数据保存到fc"); for item in cursorData: print item[0]+'-'+item[1]; fc = "F:\py\jinan.gdb/city"; where = "CITYCODE=" +item[0]; rows = arcpy.UpdateCursor(fc,where); for row in rows: row.setValue('aqi1',item[1]); rows.updateRow(row) del rows ,fc; arcpy.AddMessage("3.进行差值操作"); inPointFeatures = "F:\py\jinan.gdb/city"; inBarrierFeature = "F:\py\jinan.gdb/barrier"; cellSize = 10000.0 arcpy.CheckOutExtension("Spatial") outSplineBarriers = SplineWithBarriers(inPointFeatures, 'aqi1', inBarrierFeature, cellSize, 1); tif = "pointraster.tif"; tif1 = "pointraster1.tif"; outSplineBarriers.save(tif); arcpy.AddMessage("4.根据行政区边界图层剪切栅格") outExtractByMask = ExtractByMask(tif, inBarrierFeature) outExtractByMask.save(tif1) arcpy.AddMessage("5.更新mxd"); mxdPath = mapPath + r"\pointraster1.mxd"; mxd = arcpy.mapping.MapDocument(mxdPath); df = arcpy.mapping.ListDataFrames(mxd, "")[0]; for lyr in arcpy.mapping.ListLayers(mxd, "", df): arcpy.mapping.RemoveLayer(df, lyr); addLayer = arcpy.mapping.Layer(mapPath + r"\pointraster1.lyr") arcpy.mapping.AddLayer(df, addLayer, "BOTTOM") arcpy.AddMessage("6.输出图片png"); fileName ="aqi.png" df.extent = addLayer.getSelectedExtent() arcpy.mapping.ExportToPNG(mxd, imagepath+"\\" + fileName , df, background_color="255,255,255", transparent_color="255,255,255",world_file=True); arcpy.AddMessage("7.清理内存") del mxd, addLayer,df,outSplineBarriers,inPointFeatures,inBarrierFeature
相关文章推荐
- python3.5仿微软计算器程序
- 使用python3.5仿微软记事本notepad
- python3音乐播放器简单实现代码
- Numpy 入门教程(2)
- (转载)NumPy详细教程
- python fabric实现远程操作和部署
- python自定义模块导入方法
- Python fabric远程自动部署简介
- NumPy的详细教程
- Numpy 入门教程(2)
- (转载)NumPy详细教程
- Python fabric实践操作
- python自定义模块导入方法
- Python fabric远程自动部署简介
- python列表 数组 字典
- 由PYTHONPATH谈起
- Python类、模块、包
- Python if 和 for 的多种写法
- 从Theano到Lasagne:基于Python的深度学习的框架和库
- python继承中的变量