akvo / akvo-lumen

Make sense of your data

Home Page:https://akvo.org/akvo-lumen

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Update visualisation spec constraint problem

tangrammer opened this issue · comments

Context

https://akvoo.reamaze.com/admin/conversations/akvolumen-support-request-number-419854-from-mert-at-akvo-dot-org
Relates #2979

Link filter to k8s search console

searching by spec-message
https://console.cloud.google.com/logs/viewer?interval=NO_LIMIT&authuser=1&project=akvo-lumen&minLogLevel=0&expandAll=false&customFacets&limitCustomFacetWidth=true&advancedFilter=resource.type%3D%22k8s_container%22%0Aresource.labels.project_id%3D%22akvo-lumen%22%0Aresource.labels.location%3D%22europe-west1-d%22%0Aresource.labels.cluster_name%3D%22production%22%0Aresource.labels.namespace_name%3D%22default%22%0Aresource.labels.container_name%3D%22lumen-backend%22%0A%22%3Aspec-message%22&scrollTimestamp=2020-10-30T12%3A00%3A50.222638215Z

and finding data problem here

https://console.cloud.google.com/logs/viewer?interval=NO_LIMIT&authuser=1&project=akvo-lumen&minLogLevel=0&expandAll=false&timestamp=2020-11-03T11%3A33%3A15.421000000Z&customFacets&limitCustomFacetWidth=true&advancedFilter=resource.type%3D%22k8s_container%22%0Aresource.labels.container_name%3D%22lumen-backend%22%0Aresource.labels.pod_name%3D%22lumen-green-c866599f5-f6dqw%22%0Aresource.labels.cluster_name%3D%22production%22%0Aresource.labels.project_id%3D%22akvo-lumen%22%0Aresource.labels.namespace_name%3D%22default%22%0Aresource.labels.location%3D%22europe-west1-d%22%0Atimestamp%3D%222020-10-30T12%3A00%3A50.222638215Z%22%0AinsertId%3D%223lhr80lq8wkj87v67%22&scrollTimestamp=2020-10-30T12%3A00%3A50.222638215Z

** reproducing the problem

  (s/explain-str :akvo.lumen.specs.visualisation/visualisation
  {:id "5f3a97c5-d0f7-40b7-9d34-2c83b0a876c2",
 :datasetId "5f043cf4-e6cc-419f-9b32-94b22b2fed17",
 :name "13. Oogsturen per VB per product over de tijd",
 :visualisationType "scatter",
 :spec
 {:showLegend true,
  :metricColumnX "c114010004",
  :metricAggregation "mean",
  :metricColumnSize "c112030004",
  :filters [],
  :sizeLabel "Oogst in kg",
  :axisLabelYFromUser true,
  :legendPosition "right",
  :bucketColumn nil,
  :metricColumnY "c130280002",
  :legend
  {:order
   {:list
    ["A. De Overtuin"
     "C. Mijn Stadstuin"
     "F. Voedselrijk"
     "I. Schijndel Hardekamp"
     "O. Benthuizen"
     "P. De Stomp"
     "S. D'ekkers"
     nil],
    :mode "custom"}},
  :bucketColumnCategory "c142470029",
  :axisLabelX "Op welke datum is er geoogst?",
  :datapointLabelColumn "d2",
  :sizeLabelFromUser true,
  :legendTitle "Voedselbos",
  :axisLabelXFromUser true,
  :categoryLabelFromUser true,
  :categoryLabel "Voedselbos:",
  :axisLabelY "Hoelang heeft het oogsten geduurd? (in minuten)",
  :version 2},
 :created 1597675461314,
 :modified 1603379626461})

  "nil - failed: string? in: [:spec :legend :order :list 7] at: [\"scatter\" :spec :legend :order :list] spec: :akvo.lumen.specs.visualisation.legend.order/value\n"

Why do we add this issue?

Problem or idea

Problem is having null values in legends

Solution or next step

 modified   backend/specs/akvo/lumen/specs/visualisation/legend.clj
 @@ -8,7 +8,7 @@
 
  (s/def ::order.s/mode #{"auto" "custom"})
 
 -(s/def ::order.s/value string?)
 +(s/def ::order.s/value (s/nilable string?))
 
  (s/def ::order.s/list (s/coll-of ::order.s/value :distinct true))