> ## Documentation Index
> Fetch the complete documentation index at: https://openops-ecb4f397-mintlify-helm-chart-documentation-30057.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Data Visualization

> How to create and use charts and dashboards in OpenOps Analytics

You can visualize data that you collect with [OpenOps tables](/reporting-analytics/tables/) and display the visualizations in the **Analytics** view in OpenOps.

In addition to OpenOps tables, OpenOps Analytics can connect to and visualize your existing data sources, such as CSV files, Google Sheets, Postgres databases, and more.

## Analytics admin portal

To configure data visualizations, click **Analytics** on the main navigation bar in OpenOps. When the **Analytics** view opens, click **Admin Panel** to proceed to the Analytics admin portal that is separate from the main OpenOps application.

<img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-signin.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=d8ca0fd90c433274e23f2f0cf7d4b05a" alt="Analytics portal login form" width="419" height="215" data-path="images/analytics-signin.png" />

To sign in to the Analytics portal, use `admin` as the username and the password defined with the `OPS_ANALYTICS_ADMIN_PASSWORD` variable in the `.env` file in your OpenOps installation folder. (If you haven’t changed the password, the default is `please-change-this-password-1`.)

Once you log in, you can see two built-in dashboards: **FinOps** and **Homepage**. Modifying the **FinOps** dashboard will affect the **Analytics** tab in OpenOps.

<img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-builtin-dashboards.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=43efddcbd210a42bc4adde56331be495" alt="Built-in dashboards in the analytics portal" width="544" height="360" data-path="images/analytics-builtin-dashboards.png" />

Behind every OpenOps table, there is a Postgres database view that can be used to build charts and queries.

When a new table is created in [OpenOps tables](/reporting-analytics/tables/), the system automatically creates a new database view with the naming convention *table name \_ table id \_ userfriendly*. You can use this view to create dashboards in OpenOps, as well as connect it to other BI systems.

<img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-tables.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=7db893cb0ff86f80c1866d4c547a0995" alt="OpenOps tables" width="657" height="264" data-path="images/analytics-tables.png" />

## Building new charts

To configure a new chart to display in the **Analytics** view in OpenOps, do the following:

1. Create a new dataset for the OpenOps table that you want to source data from. To do this, navigate to **Datasets** and click **+ Dataset**. This will allow you to create a dataset on top of one of your OpenOps tables:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-datasets.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=af453e1d14805f31e64dc0c159855702" alt="Datasets" width="963" height="304" data-path="images/analytics-datasets.png" />
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-new-dataset.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=0e2c97a291f177b23fe53390aed2a8fc" alt="New dataset" width="348" height="394" data-path="images/analytics-new-dataset.png" />
2. After the dataset has been created, create a new chart by navigating to **Charts** and clicking **+ Chart**:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-charts.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=e8da970d67873df60ea1d66548a55757" alt="Charts" width="963" height="238" data-path="images/analytics-charts.png" />
3. Configure your chart. Refer to [this Superset documentation page](https://superset.apache.org/docs/using-superset/creating-your-first-dashboard#creating-charts-in-explore-view) if you need help.
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-new-chart.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=8b72e69f4f985cf3d8529004e00ddb62" alt="New chart" width="741" height="332" data-path="images/analytics-new-chart.png" />
4. When saving the chart, add it to the **FinOps** dashboard:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-save-chart.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=a7063163024cc3d36c3a43999627b701" alt="Saving a chart" width="952" height="368" data-path="images/analytics-save-chart.png" />
   As a result, the chart will display in the **Analytics** view back in OpenOps:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-chart-in-openops.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=6464d691dd3089586d35605c64f13d0f" alt="Chart in OpenOps Analytics" width="597" height="260" data-path="images/analytics-chart-in-openops.png" />

For more information on how to create charts, see [Superset documentation](https://superset.apache.org/docs/intro/).

## Connecting to external data sources

Here's what you can do to connect OpenOps Analytics to external data sources such as CSV files:

1. In the Analytics admin portal, go to **Settings > Database Connections**.
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-external-menu.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=22730fb9fc64327956711d8f1b93f375" alt="Database connections settings" width="386" height="579" data-path="images/analytics-external-menu.png" />
2. Click on **+ Database** to connect to an external data source, such as your own Postgres instance or Google Sheets.
3. Once you have created a database connection, if you’d like to upload CSVs to it, click the **Edit** icon for the database connection:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-edit-db-connection.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=cc693a4132f32fe0f96f3a452c3e7b5e" alt="Editing a database connection" width="954" height="241" data-path="images/analytics-edit-db-connection.png" />
4. In the popup that displays, go to **Advanced > Security**, scroll down, and enable **Allow file uploads**.
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-edit-database.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=38f58ba785d3dd5649ab99b83563a0f7" alt="Edit database popup" width="519" height="677" data-path="images/analytics-edit-database.png" />
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-database-allow-file-uploads.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=5367bcf0e77223fa9ab4e6eefbcbff90" alt="Allowing file uploads" width="639" height="834" data-path="images/analytics-database-allow-file-uploads.png" />
5. Click **Finish**. As a result, you should now be able to upload CSV files into your database:
   <img src="https://mintcdn.com/openops-ecb4f397-mintlify-helm-chart-documentation-30057/j9GTSEw0xEv_mJ1h/images/analytics-upload-csv-to-db.png?fit=max&auto=format&n=j9GTSEw0xEv_mJ1h&q=85&s=5e1cf17b719fdcea35a0b190fdcd5564" alt="Uploading CSV into a database" width="584" height="285" data-path="images/analytics-upload-csv-to-db.png" />

You can now build charts based on the data from your external data source, similar to how you do it with OpenOps tables. When you add charts to the **FinOps** dashboard, they become available in the **Analytics** view in OpenOps.

Feel free to join our [Slack community](https://slack.openops.com) if you have any questions or need help with your installation.
