সবচেয়ে কার্যকর স্থানিক আর কৌশলটি কী?


44

স্থানিক ডেটা পরিচালনা ও বিশ্লেষণের জন্য আর বেশ শক্তিশালী হাতিয়ার হয়ে উঠছে । আমার কিছু প্রশ্ন দিয়ে কিছু দরকারী জিনিস শিখেছি মত এই তাই এ এবং এটা কিছু simmilar আছে দরকারী হতে পারে, কিন্তু আরো 'স্থানিক' ওরিয়েন্টেড।

আপনি কিছু স্থানিক আর টিপস এবং কৌশলগুলি আপনাকে দরকারী বলে ভাগ করতে পারেন?


5
সম্প্রদায় উইকি?
relet


ACK। ধন্যবাদ। আমি বিশ্বাস করি যে আমি এটি দেখেছি তবে এটি ভুলে যাওয়া সহজ।
রিলেট করুন

3
এছাড়াও: rspatialtips.org.uk
radek

আমি মনে করি এটি সম্প্রদায়ের উইকিও হওয়া উচিত কারণ এটি বিভিন্ন ধরণের তালিকায় পরিণত হয়েছে।
আর কে

উত্তর:


38

এটি এতটা কৌশল নয় কারণ এটি spplot()নিফটি অন্তর্নির্মিত কার্যকারিতা। spplot()অ্যাট্রিবিউট ডেটা বিতরণ এবং শ্রেণিবিন্যাসের প্রকারের আলোচনা করার সময় কিংবদন্তি সোয়াচগুলি (শ্রেণিবিন্যাস বিরতির ব্যাপ্তিগুলির সাথে মেলে) স্কেল করার দক্ষতা একটি কার্যকর শিক্ষাগত কৌশল হিসাবে কাজ করে। মানচিত্রের সাথে ক্রমবর্ধমান বিতরণ প্লটের সংমিশ্রণ এই প্রয়াসে সহায়তা করে।

এখানে চিত্র বর্ণনা লিখুন এখানে চিত্র বর্ণনা লিখুন

শ্রেণিবিন্যাসের ধরণ এবং ডেটা ট্রান্সফর্মেশন প্রভাবগুলি অনুসন্ধান করতে শিক্ষার্থীদের কেবল কয়েকটি স্ক্রিপ্ট প্যারামিটার সংশোধন করতে হবে। বেশিরভাগ আর্জিআইএস কেন্দ্রিক কোর্সে এটি আর এর মধ্যে সাধারণত তাদের প্রথম উত্সাহ।

এখানে একটি কোড স্নিপেট রয়েছে:

library(rgdal) # Loads SP package by default
NE = readOGR(".", "NewEngland") # Creates a SpatialPolygonsDataFrame class (sp)

library(classInt)
library(RColorBrewer)
pal = brewer.pal(7,"Greens")
brks.qt = classIntervals(NE$Frac_Bach, n = 7, style = "quantile")
brks.jk = classIntervals(NE$Frac_Bach, n = 7, style = "jenks")
brks.eq = classIntervals(NE$Frac_Bach, n = 7, style = "equal")

# Example of one of the map plots
spplot(NE, "Frac_Bach",at=brks.eq$brks,col.regions=pal, col="transparent",
       main = list(label="Equal breaks"))
# Example of one of the cumulative dist plots
plot(brks.eq,pal=pal,main="Equal Breaks")

রেফ: আর এর সাথে প্রয়োগকৃত স্পেসিয়াল ডেটা বিশ্লেষণ (আর। বিভান্ড, ই পেবেসমা এবং ভি। গোমেজ-রুবিও)


1
খুব ঠান্ডা! এটি খুব দরকারী বলে মনে হচ্ছে।
djq

2
পলিজিও একজন মডারেটর হিসাবে সফল হন
রাডার

28

সম্পাদনা: নোট করুন গুগল ম্যাপ উত্সগুলির জন্য নতুন প্রয়োজনীয়তার কারণে এটি আর 2018-10-24 কাজ করে না।

জিওকোডিং এবং গুগল ম্যাপস ডাউনলোড সহ ডেমো প্যাকেজটি পেয়ে আমি খুব খুশি হয়েছিলাম:

library(dismo)
x <- geocode('110 George Street, Bathurst, NSW, Australia')
a <- x[5:8] + c(-0.001, 0.001, -0.001, 0.001)
e <- extent(as.numeric(a))
g <- gmap(e, type = "satellite")

plot(g)

এটি উইন্ডোজের ২.১২.০-এ রয়েছে, সেখানে ডেমো এবং এর নির্ভরতাগুলি ইনস্টল করা তুচ্ছ, অন্যান্য সিস্টেমে নিশ্চিত নয়।

বিকল্প পাঠ


1
এটি খুব দরকারী বলে মনে হচ্ছে - তবে আমি লাইন e <- extent(x[4:7] + c(-0.001, 0.001, -0.001, 0.001))বিজ্ঞাপনটি দিয়ে সমস্যার মধ্যে চলেছি যা আমি একটি ত্রুটি বার্তা পেয়েছি Error: c("x", "y") %in% names(x) is not all TRUEx[4:7]যদিও ঠিক মনে হচ্ছে; সমস্যা হতে পারে কোন চিন্তা?
djq

হ্যাঁ আপনার পুনরুত্পাদনযোগ্য উদাহরণ দরকার
এমডসুমনার

আমি এই উত্তরে উদাহরণটি পুনরুত্পাদন করার চেষ্টা করছি এবং এটি কার্যকর হয় না। উদাহরণস্বরূপ x <- geocode('110 George Street, Bathurst, NSW, Australia')প্রত্যাবর্তন করে ZERO_RESULTS, এবং যখন আমি একটি উদাহরণ ব্যবহার করি যা একটি দীর্ঘ / দীর্ঘ প্রত্যাবর্তন করে, ফাংশনe <- extent(x[4:7] + c(-0.001, 0.001, -0.001, 0.001)) also fails.
djq

এটি করার আরও একটি মার্জিত উপায় হতে পারে, তবে extentসংখ্যার একটি ভেক্টর প্রয়োজন। সুতরাং এটি কাজ করে e <- extent(c(x[,4], x[,5], x[,6], x[,7]) + c(-0.001, 0.001, -0.001, 0.001))
ডিজেকিউ

2
নিম্নলিখিত কাজ করে:e <- extent(as.numeric(x[4:7]) + c(-0.001, 0.001, -0.001, 0.001))
snth


11

এছাড়াও কৌশল নয় তবে আমি সংগ্রহ করেছি এমন কিছু সংস্থান / উদাহরণ রয়েছে

ল্যাটিস প্যাকেজটি ব্যবহার করে আরেলের ছোট ছোট একাধিক মানচিত্রের প্লট করার একটি উদাহরণ ।

স্ট্যাকওভারফ্লোতে ম্যাপিং এবং আর সম্পর্কে জিজ্ঞাসাবাদে কয়েকটি প্রশ্ন রয়েছে এবং এখানে একটি চমৎকার উদাহরণ রয়েছে। আমি অন্যান্য উত্তরগুলি এবং তারা প্রদত্ত সংস্থানগুলিও দেখতে চাই (পাশাপাশি আরও কয়েকটি উদাহরণ অনুসন্ধান করার জন্য) এসও তেও।

একই আর-সিগ-জিও গ্রুপ ব্র্যাডের একটি পৃথক লিঙ্ক ইতিমধ্যে দিয়েছে। এটি খুব সক্রিয়, এবং রজার বিভান্ড গ্রুপটিতে প্রতিদিন কার্যত প্রশ্নের উত্তর দেয়। প্রোগ্রামিং এবং পরিসংখ্যান বিশ্লেষণ উভয়ই সম্পর্কিত।

ক্র্যান স্পেসিয়াল পৃষ্ঠাটি যাচাই করার পাশাপাশি আমি অ্যাড্রিয়ান বাড্ডেলি দ্বারা রক্ষণাবেক্ষণ করা স্প্যাটস্ট্যাট পৃষ্ঠাটি বিশেষভাবে পরীক্ষা করার পরামর্শ দেব । প্রচুর উদাহরণ, একটি কোর্স এবং একটি আসন্ন ই-বুক। (এই মুহুর্তে আমি স্প্যাটস্ট্যাট কোর্সটি অতিক্রম করছি এবং আমি মনে করি এটি বিভান্ড বইয়ের চেয়ে অনেক বেশি মৃদু ভূমিকা)।

কোনও নিখরচায় সংস্থান নয়, তবে আরআই-এ আগ্রহী যে কোনও ব্যক্তির জন্য আপনি পরামর্শটি ব্যবহারের চেষ্টা করে দেখুন ! স্প্রঞ্জার দ্বারা সিরিজ। সরাসরি প্রাসঙ্গিকের সাথে অ্যাপ্লাইড স্পেসিয়াল ডেটা অ্যানালাইসিসের একটি বই রয়েছে (এটি আরগনার গাইড টু আর বইটিও আমার প্রস্তাবিত শেখার আর বই।)

একটি নিখরচায় ই-বুক, অ্যা প্র্যাকটিক্যাল গাইড টু জিওস্ট্যাটাস্টিকাল ম্যাপিং (হেনগল ২০০৯) এর আর, গ্রাএসএস এবং গুগল আর্থ (কেএমএল) এ প্রয়োগ জিওস্ট্যাটগুলির উদাহরণ রয়েছে।

আমি যদি আরও ভাল উদাহরণ পাই তবে আমি আপডেট চালিয়ে যাব (আমি আশা করি অন্যান্য ব্যক্তিরাও ভাল উদাহরণ পোস্ট করেন!)


ধন্যবাদ অ্যান্ডি আমি জালির উদাহরণ পছন্দ করি। সম্পূর্ণরূপে বিভান্ড এট আল এর সাথে একমত। বই - দুর্দান্ত সংস্থান।
radek

10

রাস্টার বিশ্লেষণের জন্য রাস্টার প্যাকেজ অত্যন্ত শক্তিশালী। স্ট্যান্ডার্ড ম্যানুয়ালটির পাশেই শুরু করার জন্য কয়েকটি ভিগনেট রয়েছে।


রাস্টার প্যাকেজ হ্যান্ডেল করতে পারে না এমন সমস্ত কারণ যা এটি র্যামের সাথে কাজ করে আপনি gdal_Utlis বিবেচনা করতে পারেন যা gdal ব্যবহারের জন্য মোড়ক ফাংশন সরবরাহ করে যাতে আপনাকে বড় ফাইলগুলি প্রক্রিয়া করতে দেয়।
জোআওয়েল

7

আমি কোনও পোস্টজিআইএস ব্যবহারকারী নই, তবে নিকটবর্তী প্রতিবেশী প্রশ্নের জন্য ভোরোনাই বহুভুজটির পরামর্শ দেওয়ার পরে , আমি কিছুটা অনুসন্ধান করেছি। আমি দেখতে পেয়েছি যে আর এর সাহায্যে আপনি পোস্টজিআইএস-এর জন্য ভোরোনাই বহুভুজ তৈরি করতে পারেন । আমি অভিভূত.


আমি নিশ্চিত যে আমি যা প্রস্তাব করতে চাই তার থেকেও সহজ উপায় আছে তবে আপনি স্প্যাটস্যাট প্যাকেজে টেসেলিকেশন তৈরি করতে পারেন, এবং তারপরে অ্যাড্রিয়ান বাড্ডেলি প্রদত্ত এই ফাংশনটি ব্যবহার করে সেই tessবস্তুকে কোনও spবস্তুতে রূপান্তর করতে পারেন । আপনি চাইলে কোনও অবজেক্ট থেকে আপনি এটি কোনও শেফফাইলে রফতানি করতে পারেন। sp
অ্যান্ডি ডাব্লু

5

আমি স্থানীয় - অ্যানালিস্ট.নেটকে হোঁচট খেয়েছি । অত্যন্ত তথ্যবহুল, বিস্তৃত এবং দরকারী। এই প্রশ্নের সাথে আরও সুনির্দিষ্ট এবং পূর্ববর্তী কয়েকটি উত্তরগুলির সাথে ইনলাইন করুন, এই পৃষ্ঠাটি দেখুন



4

এই ফাংশনটির সাহায্যে আপনি সহজেই স্থানিক যোগদান করতে পারবেন, তবে কেবলমাত্র সমস্ত অঞ্চল বহুভুজ দ্বারা পূর্ণ।

library(rgeos)
library(sp) 
library(maptools)
library(rgdal)
library(sp)
xy.map <- readShapeSpatial("http://www.udec.cl/~jbustosm/points.shp")
manzana.map <- readShapeSpatial("http://www.udec.cl/~jbustosm/manzanas_from.shp" )

IntersectPtWithPoly <- function(x, y) { 
# Extracts values from a SpatialPolygonDataFrame with SpatialPointsDataFrame, and appends table (similar to 
# ArcGIS intersect)
# Args: 
#   x: SpatialPoints*Frame
#   y: SpatialPolygonsDataFrame
# Returns:
# SpatialPointsDataFrame with appended table of polygon attributes

  # Set up overlay with new column of join IDs in x
  z <- overlay(y, x)

  # Bind captured data to points dataframe
  x2 <- cbind(x, z)

  # Make it back into a SpatialPointsDataFrame 
  # Account for different coordinate variable names 
  if(("coords.x1" %in% colnames(x2)) & ("coords.x2" %in% colnames(x2))) {
    coordinates(x2) <- ~coords.x1 + coords.x2  
  } else if(("x" %in% colnames(x2)) & ("x" %in% colnames(x2))) {
    coordinates(x2) <- ~x + y 
  }

  # Reassign its projection if it has one
  if(is.na(CRSargs(x@proj4string)) == "FALSE") {
    x2@proj4string <- x@proj4string  
  }
  return(x2)
}


test<-IntersectPtWithPoly (xy.map,manzana.map)

3

পয়েন্ট প্যাটার্ন বিশ্লেষণের উদাহরণ:

#Load library
library(spatstat) 
#create some coordinates        
x=c(78,120,150,17,20,402) 
#prepare the window range      
y=c(70,103,100,205,200,301)
win=owin(range(x),range(y)) 
#create the point pattern
p <- ppp(x,y,window=win)
#Plot it
plot(p) 

একটি পয়েন্ট প্যাটার্ন তৈরি করে এবং চিত্রিত করে। Spatstat প্যাকেজ ভৌগলিক ডেটা বিশ্লেষণের জন্য ফাংশন একটি নম্বর আছে। এখানে কিছু স্প্যাটস্যাট টিউটোরিয়াল রয়েছে:


1

এটি "কৌশল" হিসাবে যোগ্যতা অর্জন করে কিনা তা নিশ্চিত নই, তবে আমি acsপ্যাকেজ (মার্কিন আদমশুমারীর তথ্য নির্বাচন করার জন্য) এবং leafletপ্যাকেজটির (অনলাইনে হোস্টিং করা ইন্টারেক্টিভ জাভাস্ক্রিপ্ট মানচিত্র তৈরি করার জন্য ) একত্রিত করার এক বিশাল অনুরাগী ।

এই টিউটোরিয়ালটি এই দুটি প্যাকেজ একসাথে ব্যবহারের সুবিধার চিত্রিত করে একটি দুর্দান্ত কাজ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.