Sql-Server

如何創建自定義地圖報告

  • September 7, 2017

不確定這是否是正確的論壇。但只是想知道有沒有一種方法可以從圖像或在 Excel 上製作的地圖製作地圖報告。我有數據,我環顧四周,發現可以編輯世界地圖等來顯示資訊。是否有可能從頭開始製作一張簡單的地圖,以顯示平面圖之類的東西,Google地圖上沒有的東西。如果我不清楚我在問什麼,請提前謝謝大家。如果我可以更清楚,請詢問。

注意:我目前正在使用 SSRS 和 QGIS 來嘗試執行此操作。我有我需要展示的數據,但沒有我想要展示的東西的座標。我認為這可能是我在製作地圖時可以做的事情。只有一張小地圖顯示關於 200 個不同數據點的一條資訊。

這不是一個完整的答案,因為我從未使用過 SRSS 進行映射,但是閱讀彼得回答的評論,您似乎需要創建一些空間數據來使用。

這是一個簡單的範例,說明如何在不使用 GIS 軟體的情況下為座位計劃建構空間數據。完成後,只需將您的考試/學生數據加入 HallSeating 表即可。

-- Create the hall
CREATE TABLE HallOutline (
   MyID INT IDENTITY(1,1)  NOT NULL PRIMARY KEY,
   SHAPE Geometry
);

INSERT INTO HallOutLine (SHAPE)
VALUES (
   Geometry::STGeomFromText(
       'LINESTRING (0 0, 20 0, 20 50, 0 50, 0 0)' -- Simple 20 x 50 box
       ,0 -- SRID is 0 for all the data
   )
);

-- Create seating plan
CREATE TABLE HallSeating (
   MyID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
   Row INT NOT NULL, -- I'm using row and column as a key to the
   Col INT NOT NULL, -- exam data, but you could use anything.
   SHAPE Geometry
);

INSERT INTO HallSeating(Row, Col, Shape)
SELECT Row, 
      Col, 
      Geometry::STGeomFromText(
        Concat('Point (',XLocation,' ',YLocation,')') -- Point location of the seat
        ,0 -- 0 SRID again
      ).STBuffer(.5) -- Create circle diameter 1 at seat location
FROM (VALUES(1,40), (2,37), (3,34), (4,31), (5,28), (6,25), (7,22), (8,19), (9,16), (10,13), (11,10), (12,7))  AS R(Row,YLocation), -- Rows
   (VALUES(1,2), (2,3), (3,4), (4,5), (5,6), (6,7), (7,8), (8,11), (9,12), (10,13), (11,14), (12,15), (13,16), (14,17), (15,18))  AS C(Col,XLocation) -- Columns

這將創建一個看起來像這樣的計劃

在此處輸入圖像描述

引用自:https://dba.stackexchange.com/questions/106026