কিউজিআইএস-এর মধ্যে কোনও সিএসভি ফাইল পুনরায় লোড হচ্ছে?


9

আমি আমার মতলব সিমুলেশন থেকে ফলাফল চিত্রিত করতে QGIS ব্যবহার করি। মতলব একটি সিএসভি ফাইল তৈরি করে যা কিউজিআইএস-এর মধ্যে একটি শেফফিলের সাথে সংযুক্ত।

মতলব সিমুলেশন থেকে নতুন ফলাফলগুলি দেখাতে এই মুহুর্তে আমাকে কিউজিআইএস বন্ধ এবং পুনরায় খুলতে হবে।

কিউজিআইএস বন্ধ না করে এবং পুনরায় খোলা না রেখে সিএসভি ফাইলটির বৈশিষ্ট্য-সারণীটি পুনরায় লোড করা সম্ভব?


আপনার টিপের @Jason ধন্যবাদ আমার জন্য একটি কবজ পছন্দ যদি কাজ না - QGIS 3.10 বিকল্প বৈশিষ্ট্যাবলী বয়সী> সোর্স ব্যবহারের [propertiescreatespatialindex! ] ( I.stack.imgur.com/5G3y5.png )
Hannes Buhrmann

উত্তর:


3

আমি একটি বিকল্প ওয়ার্কফ্লো প্রস্তাব করতে পারি যে, প্রতিবার কিউজিআইএস বন্ধ করা এবং খোলার চেয়ে অগত্যা সহজ নয়, আরও বোধগম্য হতে পারে:

  • স্থানজুড়ে আপনার শেফফাইলটি আমদানি করুন
  • স্থানিক স্থানগুলিতে সিএসভি আমদানি করুন ("ভার্চুয়াল টিএক্সটি / সিএসভি বিকল্প ব্যবহার করে)
  • ভার্চুয়াল সিএসভি টেবিলের মধ্যে স্থানিক টেবিল (শেফফাইল) যোগদান করে স্থানিক স্থানটিতে একটি স্থানিক দৃশ্য তৈরি করুন

এখন, আপনি কোনও স্থানিক স্তরটির মতোই QGIS এ দৃশ্যটি প্রদর্শন করতে পারেন এবং স্থানিক থেকে JOINed মানগুলি ব্যবহার করতে পারেন। তবে, প্রতিবার সিএসভি পুনঃনির্মাণ করার সময়, আপনাকে ভার্চুয়াল সিএসভি টেবিলটি ড্রপ করতে হবে এবং এর সাথে আবার লিঙ্ক করতে হবে। তারপরে কিউজিআইএস-এ একটি রিফ্রেশ নতুন মানগুলি দেখায়। এটি কেবল একটি মুহুর্ত নেয়, এবং আরও কী, আপনি অনেকগুলি মতামত সংজ্ঞায়িত করতে পারেন এবং পূর্বের প্রয়োজনগুলি যদি আশেপাশে রাখেন ...

আছে HTH


2

যে কেউ এখনও কোনও স্থানিক বিন্যাসটি ব্যবহার না করে এর উত্তর খুঁজছেন, আমি এমন কিছু পেয়েছি যা কাজ করে।

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

পাইথন কনসোলে আপনি পুনরায় লোড এবং পুনরায় রঙ করতে পারেন। প্রথমে আপনাকে মানচিত্রের ক্যানভাস, সিএসভি এবং স্তরটির জন্য একটি নাম নির্ধারণ করতে হবে:

mc = iface.mapCanvas()
layer=mc.currentLayer()
csv_layer=mc.currentLayer()

কারেন্টলেয়ার পদ্ধতিটি ব্যবহার করার সময় আপনি কনসোলে নামকরণ করার সময় স্তরগুলি সক্রিয় থাকার বিষয়ে নিশ্চিত হন (এটি 'বর্তমান স্তর হতে হবে')।

তারপরে, আপনি যদি নিজের যোগদানের জন্য ক্যাশে বিকল্পটি সেট করেন, আপনি সিএসভি পরিবর্তন করতে পারেন এবং তারপরে আপনার মানচিত্র পুনরায় আঁকতে পাইথন কনসোলে নিম্নলিখিত দুটি কমান্ড ব্যবহার করতে পারেন:

csv_layer.reload()
layer.triggerRepaint()

এটি আমার পক্ষে কাজ করেছিল তবে আমার কাছে কেবল 100 টি সারি ডেটা ছিল। এটি এমন হতে পারে যে আপনার যখন একটি বড় ডেটাসেট থাকবে তখন ক্যাশে না করেই অপারেশনগুলি ধীর হয়ে যাবে।


0

শেফফাইলের স্তর বৈশিষ্ট্যগুলি খুলুন এবং General- এ Coordinate reference systemক্লিক করুন Create spatial index। এটি শেষ হয়ে গেলে শেফফাইলটি রিফ্রেশ হয়।

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