{"version":3,"sources":["webpack:///./src/pages/docs/Creating Charts and Dashboards/index.mdx"],"names":["_frontmatter","MDXLayout","DefaultLayout","MDXContent","components","props","mdxType","src","isMDXComponent"],"mappings":"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","file":"component---src-pages-docs-creating-charts-and-dashboards-index-mdx-f586455879389b786449.js","sourcesContent":["import * as React from 'react'\n  /* @jsx mdx */\nimport { mdx } from '@mdx-js/react';\n/* @jsx mdx */\n\nimport DefaultLayout from \"/Users/max/code/superset/docs/node_modules/gatsby-theme-docz/src/base/Layout.js\";\nexport const _frontmatter = {};\n\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n  console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n  return <div {...props} />;\n};\n\nconst MDXLayout = DefaultLayout;\nexport default function MDXContent({\n  components,\n  ...props\n}) {\n  return <MDXLayout {...props} components={components} mdxType=\"MDXLayout\">\n    <h2 {...{\n      \"id\": \"creating-your-first-dashboard\"\n    }}>{`Creating Your First Dashboard`}</h2>\n    <p>{`This section is focused on documentation for end-users (data analysts, business analysts, data\nscientists, etc.). In addition to this site, Preset.io maintains an upto-date set of end-user\ndocumentation at `}\n      <a {...{\n        \"href\": \"https://docs.preset.io/\",\n        \"parentName\": \"p\"\n      }}>{`docs.preset.io`}</a>\n      {`.`}</p>\n    <p>{`This tutorial targets someone who wants to create charts and dashboards in Superset. We’ll show you\nhow to connect Superset to a new database and configure a table in that database for analysis.\nYou’ll also explore the data you’ve exposed and add a visualization to a dashboard so that you get a\nfeel for the end-to-end user experience.`}</p>\n    <h3 {...{\n      \"id\": \"connecting-to-a-new-database\"\n    }}>{`Connecting to a new database`}</h3>\n    <p>{`We assume you already have a database configured and can connect to it from the instance on which\nyou’re running Superset. If you’re just testing Superset and want to explore sample data, you can\nload some sample PostgreSQL datasets into a fresh DB, or configure the\n`}\n      <a {...{\n        \"href\": \"https://github.com/dylburger/noaa-ghcn-weather-data\",\n        \"parentName\": \"p\"\n      }}>{`example weather data`}</a>\n      {` we use here.`}</p>\n    <p>{`Under the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Sources`}</strong>\n      {` menu, select the `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`Databases`}</em>\n      {` option:`}</p>\n    <p><img src=\"/images/tutorial_01_sources_database.png\" />\n      {' '}</p>\n    <p>{`On the resulting page, click on the green plus sign, near the top right:`}</p>\n    <p><img src=\"/images/tutorial_02_add_database.png\" />\n      {' '}</p>\n    <p>{`You can configure a number of advanced options on this page, but for this walkthrough, you’ll only\nneed to do `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`two things`}</strong>\n      {`:`}</p>\n    <ol>\n\n      <li {...{\n        \"parentName\": \"ol\"\n      }}>{`Name your database connection:`}</li>\n\n    </ol>\n    <img src=\"/images/tutorial_03_database_name.png\" />\n    <p>{`Provide the SQLAlchemy Connection URI and test the connection:`}</p>\n    <img src=\"/images/tutorial_04_sqlalchemy_connection_string.png\" />\n    <p>{`This example shows the connection string for our test weather database. As noted in the text below\nthe URI, you should refer to the SQLAlchemy documentation on\n`}\n      <a {...{\n        \"href\": \"https://docs.sqlalchemy.org/en/12/core/engines.html#database-urls\",\n        \"parentName\": \"p\"\n      }}>{`creating new connection URIs`}</a>\n      {`\nfor your target database.`}</p>\n    <p>{`Click the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Test Connection`}</strong>\n      {` button to confirm things work end to end. Once Superset can\nsuccessfully connect and authenticate, you should see a popup like this:`}</p>\n    <img src=\"/images/tutorial_05_connection_popup.png\" />\n    <p>{`Moreover, you should also see the list of tables Superset can read from the schema you’re connected\nto, at the bottom of the page:`}</p>\n    <img src=\"/images/tutorial_06_list_of_tables.png\" />\n    <p>{`If the connection looks good, save the configuration by clicking the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Save`}</strong>\n      {` button at the bottom\nof the page:`}</p>\n    <img src=\"/images/tutorial_07_save_button.png\" />\n    <h3 {...{\n      \"id\": \"adding-a-new-table\"\n    }}>{`Adding a new table`}</h3>\n    <p>{`Now that you’ve configured a database, you’ll need to add specific tables to Superset that you’d\nlike to query.`}</p>\n    <p>{`Under the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Sources`}</strong>\n      {` menu, select the `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`Tables`}</em>\n      {` option:`}</p>\n    <img src=\"/images/tutorial_08_sources_tables.png\" />\n    <p>{`On the resulting page, click on the green plus sign, near the top left:`}</p>\n    <img src=\"/images/tutorial_09_add_new_table.png\" />\n    <p>{`You only need a few pieces of information to add a new table to Superset:`}</p>\n    <ul>\n\n      <li {...{\n        \"parentName\": \"ul\"\n      }}>{`The name of the table`}</li>\n\n    </ul>\n    <img src=\"/images/tutorial_10_table_name.png\" />\n    <ul>\n\n      <li {...{\n        \"parentName\": \"ul\"\n      }}>{`The target database from the `}\n        <strong {...{\n          \"parentName\": \"li\"\n        }}>{`Database`}</strong>\n        {` drop-down menu (i.e. the one you just added above)`}</li>\n\n    </ul>\n    <img src=\"/images/tutorial_11_choose_db.png\" />\n    <ul>\n\n      <li {...{\n        \"parentName\": \"ul\"\n      }}>{`Optionally, the database schema. If the table exists in the “default” schema (e.g. the public\nschema in PostgreSQL or Redshift), you can leave the schema field blank.`}</li>\n\n    </ul>\n    <p>{`Click on the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Save`}</strong>\n      {` button to save the configuration:`}</p>\n    <img src=\"/images/tutorial_07_save_button.png\" />\n    <p>{`When redirected back to the list of tables, you should see a message indicating that your table was\ncreated:`}</p>\n    <img src=\"/images/tutorial_12_table_creation_success_msg.png\" />\n    <p>{`This message also directs you to edit the table configuration. We’ll edit a limited portion of the\nconfiguration now - just to get you started - and leave the rest for a more advanced tutorial.`}</p>\n    <p>{`Click on the edit button next to the table you’ve created:`}</p>\n    <img src=\"/images/tutorial_13_edit_table_config.png\" />\n    <p>{`On the resulting page, click on the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`List Table Column`}</strong>\n      {` tab. Here, you’ll define the way you can\nuse specific columns of your table when exploring your data. We’ll run through these options to\ndescribe their purpose:`}</p>\n    <p>{`If you want users to group metrics by a specific field, mark it as `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Groupable`}</strong>\n      {`.`}</p>\n    <p>{`If you need to filter on a specific field, mark it as `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Filterable`}</strong>\n      {`.`}</p>\n    <p>{`Is this field something you’d like to get the distinct count of? Check the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Count Distinct`}</strong>\n      {` box.`}</p>\n    <p>{`Is this a metric you want to sum, or get basic summary statistics for? The `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Sum, Min`}</strong>\n      {`, and `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Max`}</strong>\n      {`\ncolumns will help.`}</p>\n    <p>{`The `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`is temporal`}</strong>\n      {` field should be checked for any date or time fields. We’ll cover how this\nmanifests itself in analyses in a moment.`}</p>\n    <p>{`Here’s how we’ve configured fields for the weather data. Even for measures like the weather\nmeasurements (precipitation, snowfall, etc.), it’s ideal to group and filter by these values:`}</p>\n    <img src=\"/images/tutorial_14_field_config.png\" />\n    <p>{`As with the configurations above, click the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Save`}</strong>\n      {` button to save these settings.`}</p>\n    <h3 {...{\n      \"id\": \"exploring-your-data\"\n    }}>{`Exploring your data`}</h3>\n    <p>{`To start exploring your data, simply click on the table name you just created in the list of\navailable tables:`}</p>\n    <img src=\"/images/tutorial_15_click_table_name.png\" />\n    <p>{`By default, you’ll be presented with a Table View:`}</p>\n    <img src=\"/images/tutorial_16_datasource_chart_type.png\" />\n    <p>{`Let’s walk through a basic query to get the count of all records in our table. First, we’ll need to\nchange the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Since`}</strong>\n      {` filter to capture the range of our data. You can use simple phrases to apply\nthese filters, like “3 years ago”:`}</p>\n    <img src=\"/images/tutorial_17_choose_time_range.png\" />\n    <p>{`The upper limit for time, the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Until`}</strong>\n      {` filter, defaults to “now”, which may or may not be what you\nwant. Look for the Metrics section under the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`GROUP BY`}</strong>\n      {` header, and start typing “Count” - you’ll\nsee a list of metrics matching what you type:`}</p>\n    <img src=\"/images/tutorial_18_choose_metric.png\" />\n    <p>{`Select the `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`COUNT(`}\n        {`*`}\n        {`)`}</em>\n      {` metric, then click the green `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Query`}</strong>\n      {` button near the top of the explore:`}</p>\n    <img src=\"/images/tutorial_19_click_query.png\" />\n    <p>{`You’ll see your results in the table:`}</p>\n    <img src=\"/images/tutorial_20_count_star_result.png\" />\n    <p>{`Let’s group this by the weather_description field to get the count of records by the type of weather\nrecorded by adding it to the Group by section:`}</p>\n    <img src=\"/images/tutorial_21_group_by.png\" />\n    <p>{`and run the query:`}</p>\n    <img src=\"/images/tutorial_22_group_by_result.png\" />\n    <p>{`Let’s find a more useful data point: the top 10 times and places that recorded the highest\ntemperature in 2015. We replace weather_description with latitude, longitude and measurement_date in\nthe `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Group by`}</strong>\n      {` section:`}</p>\n    <img src=\"/images/tutorial_23_group_by_more_dimensions.png\" />\n    <p>{`And replace `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`COUNT(`}\n        {`*`}\n        {`)`}</em>\n      {` with `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`max`}\n        {`_`}\n        {`_`}\n        {`measurement_flag`}</em>\n      {`:`}</p>\n    <img src=\"/images/tutorial_24_max_metric.png\" />\n    <p>{`The `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`max`}\n        {`_`}\n        {`_`}\n        {`measurement_flag`}</em>\n      {` metric was created when we checked the box under `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Max`}</strong>\n      {` and next to\nthe `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`measurement_flag`}</em>\n      {` field, indicating that this field was numeric and that we wanted to find its\nmaximum value when grouped by specific fields.`}</p>\n    <p>{`In our case, `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`measurement_flag`}</em>\n      {` is the value of the measurement taken, which clearly depends on the\ntype of measurement (the researchers recorded different values for precipitation and temperature).\nTherefore, we must filter our query only on records where the `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`weather_description`}</em>\n      {` is equal to\n“Maximum temperature”, which we do in the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Filters`}</strong>\n      {` section at the bottom of the explore:`}</p>\n    <img src=\"/images/tutorial_25_max_temp_filter.png\" />\n    <p>{`Finally, since we only care about the top 10 measurements, we limit our results to 10 records using\nthe Row `}\n      <em {...{\n        \"parentName\": \"p\"\n      }}>{`limit`}</em>\n      {` option under the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Options`}</strong>\n      {` header:`}</p>\n    <img src=\"/images/tutorial_26_row_limit.png\" />\n    <p>{`We click `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Query`}</strong>\n      {` and get the following results:`}</p>\n    <img src=\"/images/tutorial_27_top_10_max_temps.png\" />\n    <p>{`In this dataset, the maximum temperature is recorded in tenths of a degree Celsius. The top value of\n1370, measured in the middle of Nevada, is equal to 137 C, or roughly 278 degrees F. It’s unlikely\nthis value was correctly recorded. We’ve already been able to investigate some outliers with\nSuperset, but this just scratches the surface of what we can do.`}</p>\n    <p>{`You may want to do a couple more things with this measure:`}</p>\n    <ul>\n\n      <li {...{\n        \"parentName\": \"ul\"\n      }}>{`The default formatting shows values like 1.37k, which may be difficult for some users to read.\nIt’s likely you may want to see the full, comma-separated value. You can change the formatting of\nany measure by editing its config (`}\n        <strong {...{\n          \"parentName\": \"li\"\n        }}>{`Edit Table Config > List Sql Metric > Edit Metric >\nD3Format`}</strong>\n        {`)`}</li>\n\n    </ul>\n    <p>{`= Moreover, you may want to see the temperature measurements in plain degrees C, not tenths of a\ndegree. Or you may want to convert the temperature to degrees Fahrenheit. You can change the SQL\nthat gets executed against the database, baking the logic into the measure itself (`}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Edit Table\nConfig > List Sql Metric > Edit Metric > SQL Expression`}</strong>\n      {`).`}</p>\n    <p>{`For now, though, let’s create a better visualization of these data and add it to a dashboard. We can\nchange the Chart Type to “Distribution - Bar Chart”:`}</p>\n    <img src=\"/images/tutorial_28_bar_chart.png\" />\n    <p>{`Our filter on Maximum temperature measurements was retained, but the query and formatting options\nare dependent on the chart type, so you’ll have to set the values again:`}</p>\n    <img src=\"/images/tutorial_29_bar_chart_series_metrics.png\" />\n    <p>{`You should note the extensive formatting options for this chart: the ability to set axis labels,\nmargins, ticks, etc. To make the data presentable to a broad audience, you’ll want to apply many of\nthese to slices that end up in dashboards. For now, though, we run our query and get the following\nchart:`}</p>\n    <img src=\"/images/tutorial_30_bar_chart_results.png\" />\n    <h3 {...{\n      \"id\": \"creating-a-slice-and-dashboard\"\n    }}>{`Creating a slice and dashboard`}</h3>\n    <p>{`This view might be interesting to researchers, so let’s save it. In Superset, a saved query is\ncalled a `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Slice`}</strong>\n      {`.`}</p>\n    <p>{`To create a slice, click the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Save as`}</strong>\n      {` button near the top-left of the explore:`}</p>\n    <img src=\"/images/tutorial_19_click_query.png\" />\n    <p>{`A popup should appear, asking you to name the slice, and optionally add it to a dashboard. Since we\nhaven’t yet created any dashboards, we can create one and immediately add our slice to it. Let’s do\nit:`}</p>\n    <img src=\"/images/tutorial_31_save_slice_to_dashboard.png\" />\n    <p>{`Click `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Save`}</strong>\n      {`, which will direct you back to your original query. We see that our slice and\ndashboard were successfully created:`}</p>\n    <img src=\"/images/tutorial_32_save_slice_confirmation.png\" />\n    <p>{`Let’s check out our new dashboard. We click on the `}\n      <strong {...{\n        \"parentName\": \"p\"\n      }}>{`Dashboards`}</strong>\n      {` menu:`}</p>\n    <img src=\"/images/tutorial_33_dashboard.png\" />\n    <p>{`and find the dashboard we just created:`}</p>\n    <img src=\"/images/tutorial_34_weather_dashboard.png\" />\n    <p>{`Things seemed to have worked - our slice is here!`}</p>\n    <img src=\"/images/tutorial_35_slice_on_dashboard.png\" />\n    <p>{`But it’s a bit smaller than we might like. Luckily, you can adjust the size of slices in a dashboard\nby clicking, holding and dragging the bottom-right corner to your desired dimensions:`}</p>\n    <img src=\"/images/tutorial_36_adjust_dimensions.gif\" />\n    <p>{`After adjusting the size, you’ll be asked to click on the icon near the top-right of the dashboard\nto save the new configuration.`}</p>\n    <p>{`Congrats! You’ve successfully linked, analyzed, and visualized data in Superset. There are a wealth\nof other table configuration and visualization options, so please start exploring and creating\nslices and dashboards of your own`}</p>\n\n  </MDXLayout>;\n}\n;\nMDXContent.isMDXComponent = true;\n      "],"sourceRoot":""}