Penemuan data yang lebih canggih

Salah satu fitur Looker yang unik adalah terhubung langsung ke database Anda. Artinya, Anda selalu dapat mengakses data terbaru dan selalu dapat melihat perincian ke tingkat paling terperinci yang tersedia. Jadi, meskipun Anda dapat melihat ringkasan tahunan atau bulanan, Looker juga menyediakan opsi untuk melihat perincian hari, jam, atau detik secara instan.

Halaman ini memberikan contoh cara menyesuaikan dan memanfaatkan penelusuran data untuk menciptakan pengalaman analisis yang lebih efektif bagi pengguna Anda, termasuk:

  • Menyesuaikan cara nilai ditampilkan di tabel data penelusuran dasar
  • Menyesuaikan visualisasi penelusuran untuk membuat pengalaman penelusuran visual

Menyesuaikan cara nilai ditampilkan di tabel data penelusuran dasar

Arsitektur modern berbasis web dari Looker memungkinkan Anda melakukan lebih dari sekadar melihat perincian dari satu tingkat ke tingkat yang paling terperinci. Anda dapat membuat jalur penelusuran kustom hanya dengan beberapa parameter.

Contoh berikut menunjukkan cara menyesuaikan cara penyajian data di tabel latihan, termasuk:

  • Menambahkan batas baris kustom (hingga 5.000 baris) ke tabel penelusuran
  • Menambahkan pengurutan ke tabel latihan
  • Menambahkan pivot ke tabel latihan

Menambahkan batas baris (hingga 5.000 baris) ke tabel latihan

Menambahkan batas baris ke tabel perincian memungkinkan Anda mengontrol cara data ditampilkan kepada pengguna saat mereka melihat perincian nilai pengukuran. Misalnya, bagaimana jika Anda hanya ingin menampilkan 20 hasil pertama di tabel latihan saat pengguna menelusuri nilai pengukuran Jumlah yang Ditampilkan? Anda dapat menggunakan parameter link dan menetapkan subparameter url ke "{{ link }}&limit=20", seperti dalam kode LookML berikut:

measure: returned_count {
  type: count_distinct
  sql: ${id} ;;
  filters: [is_returned: "yes"]
  drill_fields: [detail*]
  link: {
    label: "Explore Top 20 Results"
    url: "{{ link }}&limit=20"
  }
}

set: detail {
  fields: [id, order_id, status, created_date, sale_price, products.brand, products.item_name, users.email]
}

Tindakan ini memungkinkan pengguna melihat perincian 20 hasil teratas dengan memilih Jelajahi 20 Hasil Teratas dari menu penelusuran pengukuran Jumlah yang Ditampilkan:

Menambahkan pengurutan ke tabel latihan

Selain membatasi data, Anda juga dapat mengontrol cara data diurutkan di tabel latihan. Misalnya, bagaimana jika Anda ingin menampilkan 20 hasil menurut Harga Promo saat pengguna menelusuri nilai ukuran Jumlah yang Ditampilkan? Anda dapat menggunakan parameter link dan menyetel subparameter url ke "{{ link }}&sorts=order_items.sale_price". Kode LookML berikut menggabungkan pengurutan kustom dengan batas baris kustom:

measure: returned_count {
  type: count_distinct
  sql: ${id} ;;
  filters: [is_returned: "yes"]
  drill_fields: [detail*]
  link: {
    label: "Explore Top 20 Results by Sale Price"
    url: "{{ link }}&sorts=order_items.sale_price+desc&limit=20"
  }
}

set: detail {
  fields: [id, order_id, status, created_date, sale_price, products.brand, products.item_name, users.email]
}

Dengan begitu, pengguna dapat melihat perincian 20 hasil teratas menurut harga promo dengan memilih Jelajahi 20 Hasil Teratas menurut Harga Promo dari menu perincian Harga Promo:

Menambahkan pivot ke tabel latihan

Selain membatasi dan mengurutkan data, Anda juga dapat mengubah dimensi dalam tabel latihan. Misalnya, bagaimana jika Anda ingin menambahkan pivot ke kolom Tingkat Usia untuk menampilkan tahun dan tingkat persentase margin kotor untuk setiap kelompok usia saat pengguna menelusuri nilai ukuran Jumlah Pesanan? Anda dapat menggunakan parameter link dan menyetel subparameter url ke "&pivots=users.age_tier":

measure: order_count {
  type: count_distinct
  drill_fields: [created_year, item_gross_margin_percentage_tier, users.age_tier, total_sale_price]
  link: {
    label: "Total Sale Price by Month for Each Age Tier"
    url: "{{link}}&pivots=users.age_tier"
  }
  sql: ${order_id} ;;
}

Dengan begitu, pengguna dapat melihat perincian tahun dan persentase margin kotor untuk setiap kelompok usia saat mereka memilih Harga Penjualan Total berdasarkan Bulan untuk Setiap Tingkat Usia dari menu penelusuran ukuran Jumlah Pesanan:

Menciptakan pengalaman penelusuran visual

Tabel data menyampaikan data secara efektif, tetapi bagaimana jika Anda ingin memvisualisasikan data yang dilihat pengguna saat mereka melakukan penelusuran? Ada beberapa cara untuk menampilkan data penelusuran dalam visualisasi selain tabel data. Bagian ini mencakup contoh berikut:

  • Pengeboran dengan fitur Lab Pengeboran Visual
  • Pengeboran ke diagram sebar dengan batas dan rata-rata gerak
  • Melihat perincian ke diagram garis bertumpuk dengan pivot
  • Melihat perincian ke visualisasi kustom
  • Melihat perincian penghitungan tabel yang memiliki format bersyarat

Pengeboran dengan fitur Lab Pengeboran Visual

Fitur Lab Pengeboran Visual memungkinkan pengguna melihat perincian Jelajah atau Tampilan. Dengan penyesuaian nol dan kumpulan latihan terbatas, Anda dapat menampilkan data penelusuran dalam berbagai jenis visualisasi yang telah dipilih sebelumnya berdasarkan data oleh Looker.

Fitur Lab Pengeboran Visual tidak didukung oleh dasbor. Untuk dasbor, Anda dapat membuat pengalaman penelusuran visual dengan parameter link tanpa perlu mengaktifkan fitur Lab. Bagian berikut memberikan contoh cara membuat pengalaman penelusuran visual menggunakan parameter link.

Sebagai contoh, untuk menampilkan berapa banyak item yang telah terjual menurut hari, Anda dapat membuat ukuran yang menelusuri kolom Tanggal Dibuat dan Total Harga Jual:

measure: count {
  type: count_distinct
  sql: ${id} ;;
  drill_fields: [created_date, total_sale_price]
}

Penelusuran visual adalah opsi paling sederhana; namun, bagaimana jika Anda ingin mengontrol jenis visualisasi yang ditampilkan kepada pengguna saat mereka melakukan penelusuran? Bagian berikut memberikan contoh cara menyesuaikan visualisasi bor lebih lanjut.

Pengeboran ke diagram sebar dengan batas dan rata-rata gerak

Anda dapat mengizinkan pengguna melihat perincian ke diagram plot sebar yang menyertakan garis tren rata-rata bergerak. Misalnya, Anda ingin menampilkan berapa banyak item yang telah terjual per hari sebagai diagram plot sebar dengan rata-rata pergerakan 30 hari:

Untuk melakukannya, Anda dapat menentukan setelan visualisasi di URL menggunakan Variabel cair. Setelan ini mengontrol visualisasi yang muncul dalam latihan:

measure: count {
  type: count_distinct
  sql: ${id} ;;
  drill_fields: [created_date, total_sale_price]
  link: {
    label: "Show as scatter plot"
    url: "
    {% assign vis_config = '{
     \"stacking\" : \"\",
     \"show_value_labels\" : false,
     \"label_density\" : 25,
     \"legend_position\" : \"center\",
     \"x_axis_gridlines\" : true,
     \"y_axis_gridlines\" : true,
     \"show_view_names\" : false,
     \"limit_displayed_rows\" : false,
     \"y_axis_combined\" : true,
     \"show_y_axis_labels\" : true,
     \"show_y_axis_ticks\" : true,
     \"y_axis_tick_density\" : \"default\",
     \"y_axis_tick_density_custom\": 5,
     \"show_x_axis_label\" : false,
     \"show_x_axis_ticks\" : true,
     \"x_axis_scale\" : \"auto\",
     \"y_axis_scale_mode\" : \"linear\",
     \"show_null_points\" : true,
     \"point_style\" : \"circle\",
     \"ordering\" : \"none\",
     \"show_null_labels\" : false,
     \"show_totals_labels\" : false,
     \"show_silhouette\" : false,
     \"totals_color\" : \"#808080\",
     \"type\" : \"looker_scatter\",
     \"interpolation\" : \"linear\",
     \"series_types\" : {},
     \"colors\": [
     \"palette: Santa Cruz\"
     ],
     \"series_colors\" : {},
     \"x_axis_datetime_tick_count\": null,
     \"trend_lines\": [
      {
      \"color\" : \"#000000\",
      \"label_position\" : \"left\",
      \"period\" : 30,
      \"regression_type\" : \"average\",
      \"series_index\" : 1,
      \"show_label\" : true,
      \"label_type\" : \"string\",
      \"label\" : \"30 day moving average\"
      }
     ]
    }' %}
     {{ link }}&vis_config={{ vis_config | encode_uri }}&toggle=dat,pik,vis&limit=5000"
  }
}

Melihat perincian ke diagram garis bertumpuk dengan pivot

Anda juga dapat mengizinkan pengguna melihat perincian ke diagram garis bertumpuk, misalnya, diagram garis bertumpuk yang menampilkan Total Harga Promo untuk setiap Angka Bulan, yang diputar berdasarkan Tahun Dibuat:

LookML berikut menentukan pengaturan untuk visualisasi sebelumnya:

measure: total_sale_price {
  type: sum
  value_format_name: usd
  sql: ${sale_price} ;;
  drill_fields: [total_sale_price, created_month_name, created_year]
  link: {
    label: "Show as stacked line"
    url: "
    {% assign vis_config = '{
     \"stacking\" : \"normal\",
     \"legend_position\" : \"right\",
     \"x_axis_gridlines\" : false,
     \"y_axis_gridlines\" : true,
     \"show_view_names\" : false,
     \"y_axis_combined\" : true,
     \"show_y_axis_labels\" : true,
     \"show_y_axis_ticks\" : true,
     \"y_axis_tick_density\" : \"default\",
     \"show_x_axis_label\" : true,
     \"show_x_axis_ticks\" : true,
     \"show_null_points\" : false,
     \"interpolation\" : \"monotone\",
     \"type\" : \"looker_line\",
     \"colors\": [
     \"#5245ed\",
     \"#ff8f95\",
     \"#1ea8df\",
     \"#353b49\",
     \"#49cec1\",
     \"#b3a0dd\"
     ],
     \"x_axis_label\" : \"Month Number\"
    }' %}
     {{ link }}&vis_config={{ vis_config | encode_uri }}&sorts=order_items.created_year+asc,order_items.created_month_name+asc&pivots=order_items.created_year&toggle=dat,pik,vis&limit=500&column_limit=15"
  } # NOTE the &pivots=
}

Melihat perincian ke visualisasi kustom

Anda juga dapat mengizinkan pengguna melihat perincian visualisasi kustom:

Untuk melakukannya, Anda dapat menyertakan visualisasi kustom dalam setelan visualisasi yang Anda tentukan untuk parameter link:

measure: average_shipping_time {
  type: average
  value_format_name: decimal_2
  sql: ${shipping_time} ;;
  drill_fields: [products.category, users.age_tier, average_shipping_time]
  link: {
    label: "See as custom viz (heatmap)"
    url: "
    {% assign vis_config = '{
     \"minColor\" : \"#d6d6d6\",
     \"maxColor\" : \"#9a33e3\",
     \"dataLabels\" : false,
     \"custom_color_enabled\" : false,
     \"custom_color\" : \"forestgreen\",
     \"show_single_value_title\": true,
     \"show_comparison\" : false,
     \"comparison_type\" : \"value\",
     \"comparison_reverse_colors\": false,
     \"show_comparison_label\" : true,
     \"show_view_names\" : true,
     \"show_row_numbers\" : true,
     \"truncate_column_names\" : false,
     \"hide_totals\" : false,
     \"hide_row_totals\" : false,
     \"table_theme\" : \"editable\",
     \"limit_displayed_rows\" : false,
     \"enable_conditional_formatting\": false,
     \"conditional_formatting_include_totals\": false,
     \"conditional_formatting_include_nulls\": false,
     \"type\" : \"highcharts_heatmap\",
     \"stacking\" : \"\",
     \"show_value_labels\" : false,
     \"label_density\" : 25,
     \"legend_position\" : \"center\",
     \"x_axis_gridlines\" : false,
     \"y_axis_gridlines\" : true,
     \"y_axis_combined\" : true,
     \"show_y_axis_labels\" : true,
     \"show_y_axis_ticks\" : true,
     \"y_axis_tick_density\" : \"default\",
     \"y_axis_tick_density_custom\": 5,
     \"show_x_axis_label\" : true,
     \"show_x_axis_ticks\" : true,
     \"x_axis_scale\" : \"auto\",
     \"y_axis_scale_mode\" : \"linear\",
     \"ordering\" : \"none\",
     \"show_null_labels\" : false,
     \"show_totals_labels\" : false,
     \"show_silhouette\" : false,
     \"totals_color\" : \"#808080\",
     \"series_types\" : {},
     \"hidden_fields\" : [
     \"order_items.count\",
     \"order_items.total_sale_price\"
     ]
    }' %}
     {{ link }}&vis_config={{ vis_config | encode_uri }}&sorts=products.category+asc,users.age_tier+asc&toggle=dat,pik,vis&limit=5000"
  }
}

Melihat perincian penghitungan tabel yang memiliki format bersyarat

Anda juga dapat mengizinkan pengguna melihat perincian penghitungan tabel yang menampilkan format bersyarat:

Ini dapat ditentukan dalam LookML sebagai berikut:

measure: total_sale_price {
  type: sum
  value_format_name: usd
  sql: ${sale_price} ;;
  drill_fields: [created_month, users.gender, total_sale_price]
  link: {
    label: "Table Calc & Total"
    url: "
    {% assign table_calc = '[
     { \"table_calculation\": \"percent_of_total\",
     \"label\": \"Percent of Total\",
     \"expression\": \"${order_items.total_sale_price:row_total} / sum(${order_items.total_sale_price:row_total})\",
     \"value_format\": null,
     \"value_format_name\": \"percent_2\",
     \"_kind_hint\": \"supermeasure\",
     \"_type_hint\": \"number\"
     },
     { \"table_calculation\": \"growth_rate\",
     \"label\": \"Growth Rate\",
     \"expression\": \"${order_items.total_sale_price} / offset(${order_items.total_sale_price},1) - 1\",
     \"value_format\": null,
     \"value_format_name\": \"percent_2\",
     \"_kind_hint\": \"measure\",
     \"_type_hint\": \"number\"
    }]' %}
    {% assign vis_config = '{
     \"type\": \"table\",
     \"show_view_names\": false,
     \"show_row_numbers\": false,
     \"truncate_column_names\": false,
     \"table_theme\": \"gray\",
     \"enable_conditional_formatting\": true,
     \"conditional_formatting\": [
     {
     \"type\": \"low to high\",
     \"value\": null,
     \"background_color\": null,
     \"font_color\": null,
     \"palette\": {
     \"name\": \"Custom\",
     \"colors\": [
     \"#FFFFFF\",
     \"#6e00ff\"
     ]},
     \"bold\": false,
     \"italic\": false,
     \"strikethrough\": false,
     \"fields\": [
     \"growth_rate\"
     ]},{
     \"type\": \"low to high\",
     \"value\": null,
     \"background_color\": null,
     \"font_color\": null,
     \"palette\": {
     \"name\": \"Custom\",
     \"colors\": [
     \"#FFFFFF\",
     \"#88ff78\"
     ]},
     \"bold\": false,
     \"italic\": false,
     \"strikethrough\": false,
     \"fields\": [
     \"percent_of_total\"
    ]}]}' %}
     {{link}}&total=on&row_total=right&dynamic_fields={{ table_calc |replace(') ', '' | encode_uri }}&pivots=users.gender&vis_config={{ vis_config |replace(') ', '' | encode_uri }}"
  }
}