Quantcast
Channel: Question and Answer » arcpy
Viewing all articles
Browse latest Browse all 767

Using ArcPy to display result shapefile with layer symbology?

$
0
0

I am using an ArcPy script, and everything is working perfectly except the display of the result shapefile file.

What is the best solution to display the result?

In the end I would like to share my script with ArcGIS Viewer for Flex.

import os, sys
import shutil
import arcpy
from arcpy import env #importálja az ArcGIS függvényeit
arcpy.CheckOutExtension("spatial") #bekapcsolja a Spatial Analysis extension licenszét
from arcpy.sa import * #importálja a Spatial Analysis tooljait
arcpy.env.overwriteOutput = True #fájlfelülrás engedélyezése
start_date = arcpy.GetParameterAsText(0)
end_date = arcpy.GetParameterAsText(1) #ezek adják a lehetőséget, hogy bevidd MB-be és ott adj meg tetszőleges dátumot 
env.workspace = "c:/temperature/input" #első mappakörnyezet
rasters = arcpy.ListRasters("*","GRID") #listába olvassa a gridjeidet az input mappában
for raster in rasters: #iterál a listából és megtartja azokat a grideket, aminek a nevük a start és end között van
    if int(raster) >= int(start_date) and int(raster) <= int(end_date):
        arcpy.CopyRaster_management((raster), "c:/temperature/query/" + (raster) + ".tif", "", "", "", "NONE", "NONE", "", "NONE", "NONE") #kimásolja ezeket a query mappába
env.workspace = "c:/temperature/query" #ugrunk a query mappakörnyezetre
eredmeny = "c:/temperature/result/atlag.tif" #előre megadjuk a következő tool még nemlétező outputjának a nevét
rasterses = arcpy.ListRasters("*","TIF") #listába olvassa a query mappa, már szűrt rasztereit
result = arcpy.gp.CellStatistics_sa((rasterses), eredmeny, "MEAN", "DATA") #a result mappába készít egy átlagrasztert a kívánt napok rétegeiből
env.workspace = "c:/temperature/query"
rasters = arcpy.ListRasters("*","TIF")
for oldraster in rasterses:
    arcpy.Delete_management(oldraster)
env.workspace = "c:/temperature/result"
outInt = Int("atlag.tif")
outInt.save("c:/temperature/result/atlagint.tif")
env.workspace = "c:/temperature/result"
arcpy.RasterToPolygon_conversion("c:/temperature/result/atlagint.tif", "c:/temperature/result/atlagint.shp", "SIMPLIFY", "VALUE")

# get the map document
mxd = arcpy.mapping.MapDocument("c:/temperature/result/mean.mxd")
# get the data frame
df = arcpy.mapping.ListDataFrames(mxd,"*")[0]
# create a new layer
newlayer = arcpy.mapping.Layer("c:/temperature/result/atlagint.shp")
# add the layer to the map at the top of the TOC in data frame 0
arcpy.mapping.AddLayer(df, newlayer, "TOP")
sourceLayer = "c:/temperature/result/symbology.lyr"
layerSymb = arcpy.mapping.Layer(sourceLayer)  
updateLayer = arcpy.mapping.ListLayers(mxd, "atlagint", df)[0]  
arcpy.mapping.UpdateLayer(df, updateLayer, layerSymb, "TRUE")  
arcpy.RefreshTOC()
arcpy.RefreshActiveView()

lyrFile = arcpy.mapping.Layer("c:/temperature/result/symbology.lyr")
for lyr in arcpy.mapping.ListLayers(lyrFile, "c:/temperature/result/atlagint.shp"):
    lyr.showLabels = True
    lyr.saveACopy("c:/temperature/result/symbologyLabels.lyr") 
exit()

Viewing all articles
Browse latest Browse all 767

Trending Articles