kibana/docs/canvas/canvas-tutorial.asciidoc
Kaarina Tungseth 1f138fa18f
[DOCS] Updates Canvas images for 7.14 (#106424)
* [DOCS] Updates Canvas images for 7.14

* Fixes refresh image size
2021-07-26 10:17:44 -05:00

129 lines
4.2 KiB
Plaintext

[role="xpack"]
[[canvas-tutorial]]
== Tutorial: Create a workpad for monitoring sales
To familiarize yourself with *Canvas*, add the Sample eCommerce orders data, then use the data to create a workpad for monitoring sales at an eCommerce store.
[float]
=== Open and set up Canvas
To create a workpad of the eCommerce store data, add the data set, then create the workpad.
. Go to the {kib} *Home* page, then click *Try our sample data*.
. On the *Sample eCommerce orders data* card, click *Add data*.
. Open the main menu, then click *Canvas*.
. On the *Canvas workpads* page, click *Create workpad*.
[float]
=== Customize your workpad with images
To customize your workpad to look the way you want, add your own images.
. Click *Add element > Image > Image*.
+
The default Elastic logo image appears on the page.
. To add your own image, click the Elastic logo, then drag the image file to the *Select or drag and drop an image* field.
+
[role="screenshot"]
image::images/canvas-image-element.png[Image showing how to add the image element]
[float]
=== Customize your data with metrics
Customize your data by connecting it to the Sample eCommerce orders data.
. Click *Add element > Chart > Metric*.
+
By default, the element is connected to the demo data, which enables you to experiment with the element before you connect it to your own data source.
. To connect the element to your own data source, make sure that the element is selected, click *Data > Demo data > Elasticsearch SQL*.
.. In the *Query* field, enter the following:
+
`SELECT sum(taxless_total_price) AS sum_total_price FROM "kibana_sample_data_ecommerce"`
.. Click *Save*.
+
The query selects the total price field and sets it to the sum_total_price field. All fields are pulled from the kibana_sample_data_ecommerce index.
. At this point, the element appears as an error, so you need to change the element display options.
.. Click *Display*
.. From the *Value* drop-down lists, make sure that *Unique* is selected, then select *sum_total_price*.
.. Change the *Label* to `Total sales`.
. The error is gone, but the element could use some formatting. To format the number, use the *Canvas* expression language.
.. Click *Expression editor*.
+
You're now looking at the raw data syntax that Canvas uses to display the element.
.. Change `metricFormat="0,0.[000]"` to `metricFormat="$0a"`.
.. Click *Run*.
[role="screenshot"]
image::images/canvas-metric-element.png[Image showing changes to the Canvas workpad]
[float]
=== Show off your data with charts
To show what your data can do, add charts, graphs, progress monitors, and more to your workpad.
. Click *Add element > Chart > Area*.
. Make sure that the element is selected, then click *Data > Demo data > Elasticsearch SQL*.
.. To obtain the taxless total price by date, enter the following in the *Query* field:
+
`SELECT order_date, taxless_total_price FROM "kibana_sample_data_ecommerce" ORDER BY order_date`
.. Click *Save*.
. Change the display options.
.. Click *Display*
.. From the *X-axis* drop-down lists, select *Value*, then select *order_date*.
.. From the *Y-axis* drop-down lists, select *Value*, then select *taxless_total_price*.
[role="screenshot"]
image::images/canvas-chart-element.png[Image showing Canvas workpad with sample data graph]
[float]
=== Show how your data changes over time
To focus your data on a specific time range, add the time filter.
. Click *Add element > Filter > Time filter*.
. Click *Display*
. To use the date time field from the sample data, enter `order_date` in the *Column* field, then click *Set*.
[role="screenshot"]
image::images/canvas-timefilter-element.png[Image showing Canvas workpad with filtered sample data graph]
To see how the data changes, set the time filter to *Last 7 days*. As you change the time filter options, the elements automatically update.
Your workpad is complete!
[float]
=== What's next?
Now that you know the basics, you're ready to explore on your own.
Here are some things to try:
* Play with the {kibana-ref}/add-sample-data.html[sample Canvas workpads].
* Build presentations of your own data with <<create-workpads,workpads>>.
* Deep dive into the {kibana-ref}/canvas-function-reference.html[expression language and functions] that drive *Canvas*.