نحوه تبدیل PDF به ESRI Shapefile با Python :: بیسین - سایت تخصصی مهندسی آب

نحوه تبدیل PDF به ESRI Shapefile با Python


در دوران مدرن سازمان ها و نهادها داده های زیادی را ثبت می کنند، و نرم افزار محاسباتی می تواند با تعداد زیادی از داده ها کار کنند، اما مطمئناً ما نتوانسته ایم داده ها را ذخیره کنیم. ما گزارش هایی را منتشر می کنیم، جدول ها و نقشه ها را ایجاد می کنیم، اما بیشتر از حفظ داده هایی که شخص دیگری می تواند آنرا بررسی کند و در مطالعه خود یا مجدداً تجزیه و تحلیل کند، بیشتر به ارائه نظرات و ارزیابی ها متمرکز شده ایم.

داده های مکانی بردار نوعی از داده هاست که با نقاط، خط و چند ضلعی همراه با اطلاعات توصیفی هر یک مرتبط است. برای اینکه مقدار کاملی از این داده های مکانی ارائه شود ، باید در استانداردهای ویژه OGC ،ESRI Shapefiles ،GeoJson ،Klm ،NetCDF، در بانک های اطلاعاتی تجاری / منبع باز، در مخازن وب ذخیره شود. با این حال ، بیشتر اوقات اختلال و منابع محدود مؤسسات دولتی / خصوصی باعث می شود که داده ها فقط در گزارش های موجود در نسخه دیجیتالی (به صورت PDF) و حتی به صورت گزارش های مبتنی بر کاغذ در دسترس باشد.


برای استفاده از داده های مکانی ارائه شده در گزارش، به روش هایی نیاز داریم تا داده ها به روش مؤثر استخراج شود. میزان ابزارها و تکنیک ها کاملاً پیشرفته بوده و برای مراحل خاص به چندین نرم افزار منبع باز نیاز است. ما یک آموزش کامل با تمام مراحل مورد نیاز برای استخراج داده های مکانی وکتور نقشه گزارش شده به صورت PDF را در یک shapefile ESRI انجام داده ایم. برای این آموزش ما از Inkscape برای تبدیل PDF به DXF ،QGIS استفاده کرده ایم تا برخی از اطلاعاتDXF ، Python و Geopandas را در یک جلسه آزمایشگاه Jupyter برای ترجمه و مقیاس گذاری فضایی استخراج کنیم.


داده های ورودی

می توانید داده های مورد نیاز این آموزش را از اینجا بارگیری کنید.


دانلود کد پایتون از اینجا


%matplotlib inline

import matplotlib.pyplot as plt

import geopandas as gpd

#open the DXF file

plano = gpd.read_file('../Pdf/Plano_Ccamacmayo.dxf')

plano.plot(figsize=(20,40))

partialTranslation=plano.translate(261.75756,-149.51527,0)

partialTranslation.plot(figsize=(20,40))

plt.grid()

scale = 4500/509.931 #1/193.11

geometryScaled = partialTranslation.scale(scale,scale,1, origin=(0,0,0)) #-261.75756,149.41021-261.66994,

geometryTranslated = geometryScaled.translate(249000, 8350500,0) #30.24975, 99.84579

geometryTranslated.plot(figsize=(20,40))

plt.grid()

#apply the new geometry to the geopandas dataframe and apply the EPSG cpde

plano = gpd.GeoDataFrame(plano, geometry=geometryTranslated)

plano.crs = {'init':'epsg:24789'}

plano.plot(figsize=(20,40))

#filter only the line elements

planoLines = plano[plano.geometry.type=='LineString']

#export the spatial as shapefile

planoLines.to_file('../Shps/Dxf_Total.shp')


آموزش

به زودی





نظرات (۰)

فرم ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی


درباره بهترين هاي بيسيـــن بدانيد...

Bird

يکي از مهمترين اهداف اين سايت تهيه آموزش هاي روان از ابزارهاي کاربردي علوم آب است.

اهميت مطالعات محيطي با ابزارهاي نوين در چيست؟

امروز با فارغ التحصيلي جمع کثير دانشجويان سالهاي گذشته و حال، با گذر از کمي گرايي ديگر صرف وجود مدارک دانشگاهي حرف اول را در بازار کار نمي زند؛ بلکه سنجش ديگري ملاک؛ و شايسته سالاري به ناچار! باب خواهد شد. يکي از مهم ترين لوازم توسعه علمي در هر کشور و ارائه موضوعات ابتکاري، بهره گيري از ابزار نوين است، بيسين با همکاري مخاطبان مي تواند در حيطه علوم آب به معرفي اين مهم بپردازد.

جستجو در بيسين


بیسین - سایت تخصصی مهندسی آب

سایت مهندسی آب بیسین با معرفی مهم ترین و کاربردی ترین نرم افزارها و مدل های شبیه سازی در حیطه مهندسی آب، تلاش به تهیه خدمات یکپارچه و محلی از محاسبات هیدرولوژیکی و هیدرولیکی می کند

W3Schools


اطلاعات سايت

  • behzadsarhadi@gmail.com
  • بهزاد سرهادي
  • شناسه تلگرام: SubBasin
  • شماره واتساپ: 09190622992-098
  • شماره تماس: 09190622992-098

W3Schools