<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                > [Wiki](Home) ? [[API--中文手冊]] ? [[地理]] ? **地理投影** * 如發現翻譯不當或有其他問題可以通過以下方式聯系譯者: * 郵箱:zhang_tianxu@sina.com * QQ群:[D3數據可視化](http://jq.qq.com/?_wv=1027&k=ZGcqYF)205076374,[大數據可視化](http://jq.qq.com/?_wv=1027&k=S8wGMe)436442115 D3默認包括了一些常見投影,如下所示。眾多的(不太常用的)投影在擴展地理投影插件和多面體投影插件中是可用的。 由D3提供的大多數投影都是通過d3.geo.projection來創建并配置的,你可以旋轉這個地球,縮放或轉換畫布等。除非你正在執行一個新的原始投影,否則你可能不會用D3.geo.projection來構造,但是你有可能使用這個配置方法。 # d3.geo.projection(raw) 從指定的原始raw 點投影的函數,構造一個新的投影。例如,一個Mercator投影可實現為: varmercator=d3.geo.projection(function(λ,φ){ return[ λ, Math.log(Math.tan(π/4+φ/2)) ]; }); (可以參考src/geo/mercator.js全面的實現。)如果原始函數支持反轉方法,則返回的投影將會顯示一個對應的反轉方法。 src/geo/mercator.js:ttps://github.com/mbostock/d3/blob/master/src/geo/mercator.js # projection(location) 投影從球面坐標(單位:度)轉到笛卡爾坐標(單位:像素),返回數組[x, y],給出輸入數組[longitude, latitude]。如果指定的位置沒有定義投影的位置,那么返回可能為null。例如,當位置在投影的裁剪邊界之外的時候。 # projection.invert(point) 投影反向是從直角坐標(像素),到球面坐標(度),返回一個數組[longitude, latitude],給定輸入數組[x, y]。但并非所有的投影都會實現反轉,對于可逆投影,這種方法是undefined。 # projection.rotate([rotation]) 如果rotation 旋轉指定了,設置投影的三軸旋轉為指定的角度λ,φ和γ(偏航角,傾斜角和滾動角,或等效地經度,緯度和滾動),以度并返回投影。如果rotation 未指定,返回當前缺省的轉動值[0, 0, 0]。如果rotation 指定且只有兩個值,而不是3個值,那么滾動的角度被假設為0°。 # projection.center([location]) 如果center 重心指定了,則設置投影中心為指定的位置,經度和緯度度數的兩元數組,并返回投影。如果沒有指定中心,則返回當前的中心,默認為?0°,0°?。 # projection.translate([point]) 如果point 點指定了,則設置投影轉變的位移為指定的二元數組[x, y]并返回的投影。如果未指定點,則返回當前變換的位移,默認為[480, 250]。變換的位移確定投影的中心像素坐標。默認轉換位移的位置是?0°,0°?,在一個960×500區域的中心。 # projection.scale([scale]) 如果scale 比例尺指定了,則設置投影的比例尺為特定的值,并返回投影。如果未指定比例尺,返回默認的值150。比例尺因子線性地對應于投影點之間的距離。然而,比例尺因子不能一直越過投影。 # projection.clipAngle(angle) 如果angle 角度指定了,則設置投影的裁剪圓半徑,指定角度并返回投影。如果角度為null,切換到子午線切割,而不是小圈的裁剪。如果沒有指定角度,返回當前裁剪的角度,默認為空。小圈裁剪是獨立于通過clipExtent的視窗裁剪。 antimeridian cutting:http://bl.ocks.org/mbostock/3788999 ? # projection.clipExtent(extent) 如果extent 范圍指定了,則設置投影的剪輯視窗范圍為指定的邊界,以像素為單位并返回投影。extent 范圍邊界被指定為一個數組[[x0, y0], [x1,y1]],其中x0 是視窗的左側,y0 是頂部,x1 為右側和y1 是底部。如果范圍為null,則視窗裁剪不執行。如果extent 范圍沒有指定,則返回當前視窗裁剪的范圍,默認為null。視窗裁剪是獨立于通過clipAngle的小圈剪裁。 # projection.precision(precision) 如果precision 精度指定了,則設置投影自適應重采樣的臨界值為指定的值,以像素為單位,并返回投影。此值對應于Douglas–Peucker 距離。如果precision 精度沒有指定,則返回投影當前重采樣的精度,其精度默認為Math.SQRT(1/2)。 0的精密度禁止自適應重采樣。 # projection.stream(listener) 返回一個投影流,包裝了特定的監聽器。任何幾何形狀的流對封裝器,都是在被傳輸到包監聽之前投影的。一個典型的投影包含多個流的變換:輸入的幾何形首先被轉換為弧度,在三軸上旋轉,在小圓圈或沿著子午線切割,最后投射到具有自適應重采樣,縮放和平移的笛卡爾平面上。 # d3.geo.projectionMutator(rawFactory) 構造一個新的投影,是從指定的原始點投影函數factory開始。此函數不直接返回投影,而是返回一個變換的方法,且你可以隨時調用原始投影函數發生變換的方法。例如,假設你正在實施Albers equal-area conic投影,它需要配置投影的兩大相似之處。使用閉包,可以實現原始投影,如下所示: // φ0 and φ1 are the two parallels functionalbersRaw(φ0,φ1){ returnfunction(λ,φ){ return[ /* compute x here */, /* compute y here */ ]; }; } 使用d3.geo.projectionMutator,可以實現一個標準的投影,使相似之處有所改變,重新分配由d3.geo.projection內部使用的原始投影: functionalbers(){ varφ0=29.5, φ1=45.5, mutate=d3.geo.projectionMutator(albersRaw), projection=mutate(φ0,φ1); projection.parallels=function(_){ if(!arguments.length)return[φ0,φ1]; returnmutate(φ0=+_[0],φ1=+_[1]); }; returnprojection; } 因此,在創建一個可變的投影時,變化的函數永遠不會暴露出來,但可以很容易地重新創建底層的原始投影。對于完全實現,可以參考src/geo/albers.js。 Standard Projections # d3.geo.albers() d3.geo.albers是d3.geo.conicEqualArea的一個別名,默認為美國中心:scale 1000,translate [480, 250],rotation [96°, 0°],center ?-0.6°, 38.7°? 和parallels [29.5°, 45.5°],使其能夠適合的顯示美國,中心圍繞著Hutchinson,Kansas在一個960×500的區域。中央經線和緯線是由美國地質調查局在1970年國家地圖集規定的。 # d3.geo.albersUsa() 埃爾伯USA投影是一個復合投影,這復合的四個埃爾伯投影的設計是用來顯示美國下部48,在阿拉斯加和夏威夷旁邊。雖然用于等值線圖,它擴展阿拉斯加0.35x倍的區域(估計是3倍),夏威夷作為下部48顯示在相同比例尺的。 埃爾伯USA投影不支持旋轉或者居中。 # d3.geo.azimuthalEqualArea() 方位角等面積投影也適用于等值線圖。這個投影的極性方面用于聯合國標志。 polar aspect:ttp://bl.ocks.org/mbostock/4364903 # d3.geo.azimuthalEquidistant() 方位角的等距投影保留了從投影中心的距離,從任何投影點到投影中心的距離到大弧距離是成比例的。因此,圍繞投影中心的圓圈是投影在笛卡爾平面的圓圈。這可以用于相對一個參考點的可視化距離,如可交換距離。 # d3.geo.conicConformal() 蘭伯特的等角的二次曲線投影投影地球形狀成為一個錐形。 # conicConformal.parallels([parallels]) 如果parallels 指定了,則設定投影的標準平行線為特定的二元緯度數組,并返回這個投影。如果parallels 沒有指定,返回當前的parallels 。 # d3.geo.conicEqualArea() 埃爾伯投影,作為一個區域相等的投影,被推薦用于等值線圖,因為它保留了地理特征的相對區域。 # conicEqualArea.parallels([parallels]) 如果parallels 指定了,設置埃爾伯投影的標準平行線為指定的二元緯度數組(以度為單位),并返回投影。如果parallels 沒有指定,返回當前parallels 。為了最大限度地減少失真,平行線應選擇為圍繞投影的中心。 # d3.geo.conicEquidistant() # conicEquidistant.parallels([parallels]) 如果parallels 指定了,設定投影的標準parallels 到指定的二元緯度數組(度),并返回投影。如果parallels 沒有指定,返回當前的parallels 。 # d3.geo.equirectangular() 這個正方形投影,或plate carrée投影,是最簡單可行的地理投影:標識函數。它既不等面積也不等角,但有時用于光柵數據。見光柵重投影的一個例子,源圖像使用正方形投影。 raster reprojection:ttp://bl.ocks.org/mbostock/4329423 # d3.geo.gnomonic() 球心投影是一個方位角投影,它投射大圓為直線。參考interactive gnomonic 的例子。 interactive gnomonic:ttp://bl.ocks.org/mbostock/3795048 # d3.geo.mercator() 這個球面的Mercator投影是常用的分片式映射庫(例如OpenLayers 和Leaflet)。例如顯示柵格分片與Mercator投影,可以參見d3.geo.tile插件,它是正形投影的,然而,它的推行造成了世界范圍地區嚴重失真,因此不建議使用choropleths。 # d3.geo.orthographic() 正投影是適合于顯示單個半球的方位投影,透視的點在無窮遠處。可以看世界觀光的動畫和互動正投影的例子。對于一般的透視投影,可以參考衛星投影。 # d3.geo.stereographic() 立體投影是另一個角度(方位)投影。在表面上看,透視的點是球體。因此,這是常用的天體圖。參考交互式立體為例。 ? # d3.geo.transverseMercator() 橫向的墨卡托投影。 Raw Projections D3提供了幾個原始的投影,當一個復合投影實現時,設計重用(如Sinu–Mollweide,它結合了原始的正弦曲線和摩爾維特投影)。原始投影在使用之前,通常是用d3.geo.projection封裝著。這些點函數都是采用球面坐標λ和φ(弧度)作為輸入,并返回一個二元數組(也是用弧度)作為輸出。許多原始投影從平面坐標映射到球面坐標,實現了一個反轉的投影。 # d3.geo.albers.raw(φ0, φ1) 是d3.geo.conicEqualArea.raw的一個別名。 # d3.geo.azimuthalEqualArea.raw 原始方位角的等面積投影。 # d3.geo.azimuthalEquidistant.raw 原始的等距方位投影。 # d3.geo.conicConformal.raw(φ0, φ1) 返回一個原始的等角的二次曲線投影,并用弧度指定parallels。 # d3.geo.conicEqualArea.raw(φ0, φ1) 返回一個原始的埃爾伯投影,并用弧度指定parallels。 # d3.geo.conicEquidistant.raw(φ0, φ1) 返回一個原始等距圓錐投影,并用弧度指定parallels。 # d3.geo.equirectangular.raw 原始的正方形投影。 # d3.geo.gnomonic.raw 原始的球心投影。 # d3.geo.mercator.raw 原始的墨卡托投影。 # d3.geo.orthographic.raw 原始的正投影。 # d3.geo.stereographic.raw 原始的立體投影。 * 何凱琳譯20141129 * gulu校對2014-12-7 23:27:06
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看