Memformat Tanggal pada label QGIS

9

Saya ingin menampilkan bidang tanggal sebagai label. Data berasal dari shapefile. Bidang yang dimaksud adalah bidang tanggal.

Ketika saya menggunakan bidang tanggal untuk label, itu ditampilkan dalam format tttt / bb / hh. Saya ingin mendapatkannya dalam format dd / mm / yyyy.

Apakah ini mungkin? Saya tahu di MapInfo saya akan menggunakan fungsi FormatDate, saya bertanya-tanya apakah ada yang serupa di QGIS.

James S
sumber

Jawaban:

7

Pembaruan: Ekspresi sekarang mendukung pemformatan tanggal, misalnya

format_date('2012-05-15','dd.MM.yyyy') → '15.05.2012'

Saat ini, ada pekerjaan yang sedang berlangsung terkait dengan "pelabelan berbasis ekspresi": http://hub.qgis.org/issues/3488 .

Untuk saat ini, Anda bisa menggunakan Field Calculator untuk mengonversi string datetime Anda ke format lain, misalnya YYYY / MM / DD ke DD.MM. YYYY seperti ini:

substr(date,8,2)||'.'||substr(date,5,2)||'.'||substr(date,0,4)

Sintaks substrat adalah:

substr(string,startpos,length)
underdark
sumber
3

Jika Anda dapat membuka file shape.dbf di editor spreadsheet favorit Anda:

  • Buat kolom baru, sebut saja temp_date.
  • Salin dan pate data tanggal lama ke temp_date
  • Pisahkan kolom itu menggunakan text to datafitur berdasarkan karakter \atau yang mana yang merupakan pembagi tanggal Anda
  • Atur ulang kolom dalam urutan yang Anda inginkan
  • Buat kolom baru new_date
  • Di new_date gunakan rumus berikut =A1 & "/" & B1 & "/" & C1. Tentu saja Anda perlu menggunakan bidang yang tepat dan bukan yang saya sebutkan.

Tentu saja mungkin ada cara standar bagi QGis untuk menangani format tanggal, tapi saya belum melihatnya. Mungkin, bermain-main dengan kalkulator lapangan jika itu membantu sama sekali

Saya yakin ada opsi untuk melakukannya menggunakan konsol python qgis, saya tidak menduga ini akan menjadi masalah besar baik menggunakan waktu / modul tanggal waktu atau hanya str.replace generik atau ekspresi reg. Saya bukan ayat dengan api jadi saya tidak bisa membantu di sana

dassouki
sumber
1
Ini bukan ide yang baik untuk mengedit dbf di luar program GIS karena bidang ObjectID tidak akan dibawa ke excel. forums.esri.com/Thread.asp?c=93&f=987&t=302104
artwork21
@ artwork21 - Terima kasih, saya akan segera menghapus jawaban saya.
dassouki
3
Utas yang dirujuk oleh @ artwork21 mendokumentasikan kesalahan mendasar pengguna: ketika Anda mengurutkan dbf, Anda menghancurkan koneksi antara itu dan fitur-fiturnya. (OID adalah herring merah lengkap; itu tidak digunakan dalam struktur shapefile.) Asalkan Anda tidak memasukkan baris, menghapus baris, atau menyusun ulang baris saat mengedit file .dbf, Anda akan baik-baik saja. Pertimbangkan untuk membuka kembali balasan Anda mengingat hal ini.
whuber