जीआईएस में मूल्य-दर-अल्फा मानचित्र कैसे लागू करें?


14

मैं हाल ही में कार्ट्रोग्राम के बारे में कुछ बैकग्राउंड रीडिंग कर रहा हूं और दिलचस्प वैकल्पिक - वैल्यू-बाय-अल्फा मैप्स पर ठोकर खाई है ।

कॉन्सेप्ट का वर्णन यहाँ अधिक विवरणों में किया गया है और पूरा पेपर उपलब्ध है [खुले तौर पर नहीं] [यहाँ]

Indiemaps ब्लॉग पर कार्यान्वयन के बारे में कुछ विवरण हैं :

... उपरोक्त सभी ग्राफिक्स एक्शनस्क्रिप्ट 3 के साथ निर्मित किए गए थे, बस एक पाठ संपादक और नवीनतम मुफ्त फ्लेक्स एसडीके का उपयोग करके ...

GIS पैकेज (ArcGIS? QuantumGIS?) में आप ऐसा कुछ कैसे लागू कर सकते हैं? या आर और ggplot2? या अजगर?


पूरे कागज पर (सभी के लिए) उपलब्ध है geovista.psu.edu/publications/2010/RothEtAl_2010_CJ.pdf
इयान Turton

सच है, इसमें आंकड़े नहीं हैं: [
radek

4
व्यक्तिगत प्रयास करें। psu.edu/rer198/publications/RothEtAl_2010_CJ.pdf जो मुझे विश्वास दिलाता है कि उसके पास भी आंकड़े हैं।
इयान Turton

जवाबों:


7

यहाँ QGIS में अल्फ़ा बाय वैल्यू करने की एक विधि दी गई है

http://nathanw.net/2013/06/27/alpha-by-value-choropleth/

आप नए ramp_colorऔर scale_linearफ़ंक्शंस और डेटा परिभाषित प्रतीकों का उपयोग कर सकते हैं

regexp_replace( ramp_color('usa', scale_linear( "unemployed_by_county_xgv_Rate",0,15,0,1)),',[^,]*$',','|| toint(scale_linear("unemployed_by_county_xgv_Labor_Force",0,100000,0,255)))

यहाँ छवि विवरण दर्ज करें


1
अच्छा काम (हालांकि मैं रंग रैंप के बारे में निश्चित नहीं हूं - हालांकि मुझे एहसास है कि यह सिर्फ एक उपयोगी तरीका है)। एक अच्छा जोड़ यह हो सकता है कि इसके साथ जाने के लिए किंवदंती कैसे बनाई जाए।
एंडी डब्ल्यू

हाँ रंग रैंप वास्तव में काम नहीं किया। यदि आपके पास एक बेहतर सुझाव है तो मैं एक अद्यतन छवि बना सकता हूं। किंवदंती के बारे में सोच रहे थे, मेरे पास एक अच्छी योजना होने पर अपडेट हो जाएगी। (यह QGIS 2.0 के साथ काम करेगा)
नाथन डब्ल्यू

1
मैंने सफ़ेद और काले रंग की कोशिश की, जो बहुत अच्छा है i.imgur.com/Wfg8T8P.png
नाथन डब्ल्यू

की जाँच करें मूल रोथ लेख - वे रैंप का सुझाव दिया है। डिसैचुरेशन के कारण, वे कुछ अधिक (शुरू में) संतृप्त बिवरिएट कलर ब्रूवर रैंप का उपयोग करते हैं। काली पृष्ठभूमि इन के लिए अच्छी लगती है क्योंकि वे पृष्ठभूमि IMO के साथ अधिक से अधिक आश्चर्यजनक विपरीत प्रदान करते हैं। मैंने यहाँ अपनी अटकलों के बारे में कुछ लिखा है
एंडी डब्ल्यू

(शायद) बेहतर छवि के साथ @AndyW अपडेट किया गया।
नाथन डब्ल्यू

5

आर में आप बहुभुज में पढ़ सकते हैं और उन्हें एक उपकरण पर प्लॉट कर सकते हैं जो पारदर्शिता का समर्थन करता है। यहाँ मैं विंडोज़ () डिवाइस, R 2.12.0 का उपयोग rgdal और sp संकुल के साथ कर रहा हूँ।

## read some example polygons
library(rgdal)
dsn <- system.file("vectors/ps_cant_31.MIF", package = "rgdal")[1]
ps_cant_31 <- readOGR(dsn=dsn, layer="ps_cant_31")

## scale population values 

ps_cant_31$sclpop <- sqrt((ps_cant_31$POP - min(ps_cant_31$POP))/ diff(range(ps_cant_31$POP)))

## randomly assign 0 or 1
ps_cant_31$rand <- sample(0:1, length(ps_cant_31$POP), replace = TRUE)

## plot red or blue, scaled by population
plot(ps_cant_31,  col = ifelse(ps_cant_31$rand == 0, rgb(0, 0, 1, ps_cant_31$sclpop), rgb(1, 0, 0, ps_cant_31$sclpop)))

वैकल्पिक शब्द


धन्यवाद माडस्नर! मैं जो हासिल करना चाहता हूं, वह सबसे करीब है। आर की स्थानिक कार्यक्षमता के साथ खिलवाड़ करना शुरू कर दिया, इसलिए अब इसे अपने डेटा के साथ दोहराने की कोशिश करूंगा।
राडेक


4

मेरा सुझाव है कि आप जियो विस्टा साइट और उनके सॉफ्टवेयर की जाँच करें। दृश्य जांच टूलकिट , द्वि-variate chloropleth नक्शे लागू करने के लिए एक जीयूआई कार्यक्रम प्रदान करता है (मैं यहाँ पर एक पोस्टर पता है कि परियोजना पर काम करता है और अन्य संसाधनों से बात करने के लिए सक्षम हो सकता है)।

मुझे लगता है कि कार्टोग्रामर ब्लॉग पोस्ट तकनीक की व्याख्या करने के लिए पर्याप्त है, लेकिन यहां अभ्यास में इसका उपयोग देखने के लिए एक बहुत अच्छा लेख (जनता के लिए खुला) है।

भूवैज्ञानिक विश्लेषण स्थानिक स्कैन को बढ़ाने के लिए सांख्यिकीय व्याख्या: अमेरिका गर्भाशय ग्रीवा के कैंसर मृत्यु दर जिन चेन, रॉबर्ट ई रोथ, एडम टी Naito, यूजीन जे Lengerich और एलन एम MacEachren इंटरनेशनल जर्नल ऑफ हेल्थ जियोग्राफिक्स 2008, 7:57 का विश्लेषण

मुझे पायथन और आर के लिए कुछ कोड उदाहरण देखने की उम्मीद है! मूल रूप से कोई भी प्रोग्राम जो दो-स्तरीय रंग योजना (या द्विभाजन) को लागू कर सकता है, अल्फा मानचित्र द्वारा एक मूल्य बना सकता है। हालाँकि अब तक मैंने जितने भी कार्यान्वयन सूचीबद्ध किए हैं, वे सभी कोरोप्लेथ मानचित्रों के लिए हैं, ऐसा कोई कारण नहीं है कि आप इसे रेखापुंज या बिंदु आधारित मानचित्र के लिए भी लागू नहीं कर सकते।


मैंने हाल ही में एक ब्लॉग पोस्ट लिखा है कि उन्हें आर्कगिस में कैसे लागू किया जाए, आर्क मैप के साथ अल्फा मैप्स द्वारा वैल्यू बनाना । यह मूल रूप से किसी दिए गए पारदर्शिता के लिए अलग-अलग परतें बनाने के लिए मजबूर करता है, और फिर आर्काइव के भीतर उपलब्ध वेक्टर संपादन टूल का उपयोग करके आवश्यक द्विभाजक किंवदंती का उत्पादन करने के लिए (या यदि आप एक काली पृष्ठभूमि आईबीए मानचित्र का उत्पादन करना चाहते हैं तो किंवदंती को दोहराने के लिए नकली इनसेट मैप का उपयोग कर सकते हैं)।

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें


Thx एंडी। वीआईटी काफी दिलचस्प लग रहा है - इसे आज़माना होगा।
राडेक

डेटा इनपुट के साथ थोड़ा सा छेड़छाड़ आवश्यक है, लेकिन बॉक्स से बाहर काम करता है। अन्वेषणात्मक विश्लेषण के लिए ग्रीट टूल। एकमात्र समस्या _ मुझे आगे की प्रक्रिया के लिए डेटा निर्यात करने का कोई तरीका नहीं मिल सकता है।
राडेक

3

आप यह कर सकते हैं कि एक SLD आधारित शैली का उपयोग करके uDig है जो OGC फ़िल्टर युक्ति में गणित कार्यों का उपयोग करके% अपारदर्शिता की गणना करता है। मुझे यकीन नहीं है कि यह कितना कुशल होगा लेकिन निश्चित रूप से अवधारणा के प्रमाण के लिए इस्तेमाल किया जा सकता है।

मैंने http://ian01.geog.psu.edu/geoserver/www/cartogram/alphabyvalue.html पर http://ian01.geog.psu.edu/geoserb_docs/cartogram/cartogram पर चर्चा के साथ एक डेमो बनाया है । एचटीएमएल । यह बहुत आसान है।

          <PolygonSymbolizer>
            <Fill>
              <!-- CssParameters allowed are fill (the color) and fill-opacity -->
              <CssParameter name="fill">#4DFF4D</CssParameter>
              <CssParameter name="fill-opacity">
                <ogc:Div>
                  <ogc:PropertyName>PERSONS</ogc:PropertyName>
                  <ogc:Literal>30e6</ogc:Literal>
                </ogc:Div>
              </CssParameter>
            </Fill>     
          </PolygonSymbolizer>

(जहां 30e6 कैलिफोर्निया की जनसंख्या है)


धन्यवाद Iant। क्या यह संभव हो सकेगा कि किसी एक चर का उपयोग करके इन शैलियों को 'प्रति बहुभुज' के आधार पर लागू किया जाए?
रेकॉक

अपारदर्शिता पैरामीटर में 0-1 के बीच एक मान की गणना करने के लिए आपको एक फ़ंक्शन रखना होगा।
इयान Turton

क्या यह "वैल्यू-बाय-अल्फा मानचित्र" के बजाय "वैल्यू-बाय-अल्फा मैप" नहीं होना चाहिए? ian01.geog.psu.edu/geoserver_docs/cartogram/index.html सही रूप से बताता है कि: "कार्टोग्राम एक ऐसा मानचित्र होता है, जिसमें कुछ अन्य चर को क्षेत्र या दूरी के स्थान पर प्रतिस्थापित किया जाता है।"
अंडरडार्क

1
शायद :-) लेकिन कार्टोग्राम के अन्य परिभाषा "एक नक्शा है कि आप के साथ के बारे में गड़बड़ एक बिंदु बनाने के लिए" है
इयान Turton

2

आप ऐसा करने के लिए GDAL का उपयोग कर सकते हैं, या तो VRT फ़ाइलों के माध्यम से, या मानों को प्रोग्रामेटिक रूप से सेट करके, RGBA डेटासेट के चौथे बैंड (जैसे कि GeoTiff) का उपयोग करके। मैं दिखाता हूँ कि एक VRT का उपयोग कैसे किया जाता है क्योंकि इसके कुछ सरल: RGB टिफ के साथ शुरू करते हुए, आप FAQ के अनुसार पैलेटेड इमेज बना सकते हैं :

# translate the rgba tiff to a VRT
gdal_translate -of VRT rgb.tif rgb.vrt

# modify the color table in an editor

# translate back to an image
gdal_translate rgb.vrt mask-by-alpha.tif

संपादन चरण में, परिणाम खोलें rgb.vrt, और आवश्यकतानुसार रंग तालिका को संशोधित करें, c4अल्फा सेट करने के लिए मूल्यों (0-255) को समायोजित करें :

<VRTDataset rasterXSize="226" rasterYSize="271">
  <VRTRasterBand dataType="Byte" band="1">
    <ColorInterp>Palette</ColorInterp>
    <ColorTable>
      <Entry c1="238" c2="238" c3="238" c4="0"/>
      <Entry c1="237" c2="237" c3="237" c4="64"/>
      <Entry c1="236" c2="236" c3="236" c4="128"/>
      <Entry c1="229" c2="229" c3="229" c4="255"/>
    </ColorTable>
  </VRTRasterBand>
</VRTDataset> 

धन्यवाद scw वास्तव में इनपुट के रूप में 3k वेक्टर बहुभुज के साथ परिदृश्य के लिए मेरा वर्कफ़्लो कैसा लगेगा? क्या मुझे पहले अल्फा के बिना कोरोप्लेथ मानचित्र बनाना चाहिए - रेखापुंज के रूप में सहेजें - और फिर रेखापुंज मानों को समायोजित करें? मानों को 'प्रति बहुभुज' के आधार पर अनुकूलित करना होगा। और मुझे इसे किसी भी तरह से उस क्षेत्र के अनुसार स्वचालित करना होगा जो अल्फा वैल्यू को
चलाएगा

1

मुझे वह पसंद है - मैंने उस अवधारणा के बारे में पहले कभी नहीं सोचा था।

यदि आपके पास ArcGIS में FME या डेटा इंटरऑपरेबिलिटी एक्सटेंशन तक पहुंच है , तो ट्रांसफॉर्मर का एक गुच्छा है जो आपको अल्फा बैंड सहित एक रैस्टोरेंट में बैंड वैल्यू में हेरफेर करने देगा।

RasterExpressionEvaluator, RasterInterpretationCoercer और RasterBandOrderer वे हैं जिन्हें मैं पहले प्रयास करूँगा। तब आप किसी जीआईएस / विज़ुअलाइज़ेशन टूल में डेटा आयात / उपयोग कर सकते थे।

मेरे एक सहयोगी ने एक रेखापुंज छवि के अंदर पासवर्ड 'छिपा' बनाने के लिए एक समान विचार का इस्तेमाल किया: http://www.fmepedia.com/index.php/PasswordGenerator

प्रकटीकरण: मैं सुरक्षित सॉफ्टवेयर के लिए काम करता हूं - FME के ​​निर्माताओं।


Thx मार्क। दुर्भाग्य से मेरे पास एफएमई तक पहुंच नहीं है। और डेटा इंटरऑपरेबिलिटी आर्कजीआईएस के लिए मेरे यूनि लाइसेंस में शामिल नहीं है: [
radek

1

QGIS में इसे लागू करने के तरीके पर जोश से एक और विवरण

यहाँ छवि विवरण दर्ज करें

बहुत अच्छा और विस्तृत ट्यूटोरियल।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.