diff --git a/tutoraspects/asset_command_helpers.py b/tutoraspects/asset_command_helpers.py index ef2674035..b0a6e83d9 100644 --- a/tutoraspects/asset_command_helpers.py +++ b/tutoraspects/asset_command_helpers.py @@ -123,7 +123,7 @@ def omit_templated_vars(self, content: dict, existing: dict): Omit templated variables from the content if they are not present in the existing file content. """ - if not content or not existing: + if not isinstance(content, dict) or not isinstance(existing, dict): return for key in content.keys(): diff --git a/tutoraspects/plugin.py b/tutoraspects/plugin.py index c4eec98d4..9cb673cfd 100644 --- a/tutoraspects/plugin.py +++ b/tutoraspects/plugin.py @@ -332,7 +332,7 @@ # For now we are pulling this from github, which should allow maximum # flexibility for forking, running branches, specific versions, etc. ("DBT_REPOSITORY", "https://github.com/openedx/aspects-dbt"), - ("DBT_BRANCH", "v3.23.0"), + ("DBT_BRANCH", "v3.24.0"), ("DBT_SSH_KEY", ""), ("DBT_STATE_DIR", "/app/aspects/dbt_state/"), # This is the name of the database dbt will write to diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Learner_Summary.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Learner_Summary.yaml new file mode 100644 index 000000000..eb554ac9e --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Learner_Summary.yaml @@ -0,0 +1,117 @@ +_file_name: Learner_Summary.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: da75efef-09ba-4ed0-8b6b-bf11c5c26008 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: No filter + expressionType: SIMPLE + operator: TEMPORAL_RANGE + subject: emission_time + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: course_grade + operator: "\u2265" + targetValue: 0.7 + - colorScheme: '#FDE380' + column: course_grade + operator: "\u2264 x \u2264" + targetValueLeft: '0.5' + targetValueRight: '0.7' + - colorScheme: '#EFA1AA' + column: course_grade + operator: < + targetValue: 0.5 + extra_form_data: {} + groupby: + - username + - name + - email + - course_name + - course_run + - expressionType: SQL + label: Enrollment Date + sqlExpression: emission_time + - last_visited + - expressionType: SQL + label: Passed/Failed + sqlExpression: approving_state + - expressionType: SQL + label: Enrollment Track + sqlExpression: enrollment_mode + - enrollment_status + - expressionType: SQL + label: Grade Range + sqlExpression: grade_bucket + - course_grade + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 1000 + server_page_length: 100 + server_pagination: true + show_cell_bars: true + show_totals: true + table_timestamp_format: smart_date + temporal_columns_lookup: + emission_time: true + last_visited: true + time_grain_sqla: P1D + viz_type: table +query_context: "{\"datasource\":{\"id\":105,\"type\":\"table\"},\"force\":false,\"\ + queries\":[{\"filters\":[{\"col\":\"emission_time\",\"op\":\"TEMPORAL_RANGE\",\"\ + val\":\"No filter\"}],\"extras\":{\"time_grain_sqla\":\"P1D\",\"having\":\"\",\"\ + where\":\"\"},\"applied_time_extras\":{},\"columns\":[\"username\",\"name\",\"email\"\ + ,\"course_name\",\"course_run\",{\"expressionType\":\"SQL\",\"label\":\"Enrollment\ + \ Date\",\"sqlExpression\":\"emission_time\"},{\"timeGrain\":\"P1D\",\"columnType\"\ + :\"BASE_AXIS\",\"sqlExpression\":\"last_visited\",\"label\":\"last_visited\",\"\ + expressionType\":\"SQL\"},{\"expressionType\":\"SQL\",\"label\":\"Passed/Failed\"\ + ,\"sqlExpression\":\"approving_state\"},{\"label\":\"Enrollment Track\",\"sqlExpression\"\ + :\"enrollment_mode\",\"expressionType\":\"SQL\"},\"enrollment_status\",{\"label\"\ + :\"Grade Range\",\"sqlExpression\":\"grade_bucket\",\"expressionType\":\"SQL\"},\"\ + course_grade\"],\"metrics\":[],\"orderby\":[],\"annotation_layers\":[],\"row_limit\"\ + :100,\"row_offset\":0,\"series_limit\":0,\"order_desc\":true,\"url_params\":{},\"\ + custom_params\":{},\"custom_form_data\":{},\"post_processing\":[]},{\"filters\"\ + :[{\"col\":\"emission_time\",\"op\":\"TEMPORAL_RANGE\",\"val\":\"No filter\"}],\"\ + extras\":{\"time_grain_sqla\":\"P1D\",\"having\":\"\",\"where\":\"\"},\"applied_time_extras\"\ + :{},\"columns\":[\"username\",\"name\",\"email\",\"course_name\",\"course_run\"\ + ,{\"expressionType\":\"SQL\",\"label\":\"Enrollment Date\",\"sqlExpression\":\"\ + emission_time\"},{\"timeGrain\":\"P1D\",\"columnType\":\"BASE_AXIS\",\"sqlExpression\"\ + :\"last_visited\",\"label\":\"last_visited\",\"expressionType\":\"SQL\"},{\"expressionType\"\ + :\"SQL\",\"label\":\"Passed/Failed\",\"sqlExpression\":\"approving_state\"},{\"\ + label\":\"Enrollment Track\",\"sqlExpression\":\"enrollment_mode\",\"expressionType\"\ + :\"SQL\"},\"enrollment_status\",{\"label\":\"Grade Range\",\"sqlExpression\":\"\ + grade_bucket\",\"expressionType\":\"SQL\"},\"course_grade\"],\"metrics\":[],\"orderby\"\ + :[],\"annotation_layers\":[],\"row_limit\":0,\"row_offset\":0,\"series_limit\":0,\"\ + order_desc\":true,\"url_params\":{},\"custom_params\":{},\"custom_form_data\":{},\"\ + post_processing\":[],\"is_rowcount\":true}],\"form_data\":{\"datasource\":\"105__table\"\ + ,\"viz_type\":\"table\",\"slice_id\":193,\"query_mode\":\"aggregate\",\"groupby\"\ + :[\"username\",\"name\",\"email\",\"course_name\",\"course_run\",{\"expressionType\"\ + :\"SQL\",\"label\":\"Enrollment Date\",\"sqlExpression\":\"emission_time\"},\"last_visited\"\ + ,{\"expressionType\":\"SQL\",\"label\":\"Passed/Failed\",\"sqlExpression\":\"approving_state\"\ + },{\"label\":\"Enrollment Track\",\"sqlExpression\":\"enrollment_mode\",\"expressionType\"\ + :\"SQL\"},\"enrollment_status\",{\"label\":\"Grade Range\",\"sqlExpression\":\"\ + grade_bucket\",\"expressionType\":\"SQL\"},\"course_grade\"],\"time_grain_sqla\"\ + :\"P1D\",\"temporal_columns_lookup\":{\"emission_time\":true,\"last_visited\":true},\"\ + all_columns\":[],\"percent_metrics\":[],\"adhoc_filters\":[{\"clause\":\"WHERE\"\ + ,\"comparator\":\"No filter\",\"expressionType\":\"SIMPLE\",\"operator\":\"TEMPORAL_RANGE\"\ + ,\"subject\":\"emission_time\"}],\"order_by_cols\":[],\"server_pagination\":true,\"\ + row_limit\":1000,\"server_page_length\":100,\"order_desc\":true,\"show_totals\"\ + :true,\"table_timestamp_format\":\"smart_date\",\"show_cell_bars\":true,\"color_pn\"\ + :true,\"conditional_formatting\":[{\"column\":\"course_grade\",\"colorScheme\":\"\ + #ACE1C4\",\"operator\":\"\u2265\",\"targetValue\":0.7},{\"column\":\"course_grade\"\ + ,\"colorScheme\":\"#FDE380\",\"targetValueLeft\":\"0.5\",\"operator\":\"\u2264 x\ + \ \u2264\",\"targetValueRight\":\"0.7\"},{\"column\":\"course_grade\",\"colorScheme\"\ + :\"#EFA1AA\",\"operator\":\"<\",\"targetValue\":0.5}],\"extra_form_data\":{},\"\ + dashboards\":[42],\"force\":false,\"result_format\":\"json\",\"result_type\":\"\ + full\"},\"result_format\":\"json\",\"result_type\":\"full\"}" +slice_name: Learner Summary +uuid: 6da50964-000e-4342-a931-3881feb02c13 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section.yaml new file mode 100644 index 000000000..7c5218cde --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section.yaml @@ -0,0 +1,53 @@ +_file_name: Page_views_per_section.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 9febd6be-5102-4dbf-86b9-45ebd3cbbc45 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: No filter + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_s8d5o5h20q_2r3i3mfdrkw + isExtra: false + isNew: false + operator: TEMPORAL_RANGE + sqlExpression: null + subject: visited_on + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: all_pages_viewed + operator: '>' + targetValue: 0 + - colorScheme: '#FDE380' + column: at_leat_one_page_viewed + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - section_with_name + metrics: + - all_pages_viewed + - at_leat_one_page_viewed + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: '{"datasource":{"id":99,"type":"table"},"force":false,"queries":[{"filters":[{"col":"visited_on","op":"TEMPORAL_RANGE","val":"No + filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":["section_with_name"],"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"orderby":[["all_pages_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"99__table","viz_type":"table","slice_id":192,"query_mode":"aggregate","groupby":["section_with_name"],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"clause":"WHERE","comparator":"No + filter","datasourceWarning":false,"expressionType":"SIMPLE","filterOptionName":"filter_s8d5o5h20q_2r3i3mfdrkw","isExtra":false,"isNew":false,"operator":"TEMPORAL_RANGE","sqlExpression":null,"subject":"visited_on"}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"colorScheme":"#ACE1C4","column":"all_pages_viewed","operator":">","targetValue":0},{"colorScheme":"#FDE380","column":"at_leat_one_page_viewed","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' +slice_name: Page views per section +uuid: 834ec7c4-ead8-4dea-b227-1c8be5fbb1d3 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection.yaml index 490689e2b..5d3eeeb21 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection.yaml @@ -30,7 +30,7 @@ params: row_limit: 10000 show_empty_columns: true show_legend: true - show_value: true + show_value: false sort_series_type: sum time_grain_sqla: P1M tooltipTimeFormat: smart_date @@ -38,7 +38,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 0 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -52,13 +52,10 @@ params: y_axis_title_margin: 30 y_axis_title_position: Left zoomable: true -query_context: '{"datasource":{"id":381,"type":"table"},"force":false,"queries":[{"filters":[{"col":"visited_on","op":"TEMPORAL_RANGE","val":"No - filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section/subsection - name","label":"section/subsection name","expressionType":"SQL"}],"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"orderby":[["all_pages_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection - name"],"columns":[],"aggregates":{"all_pages_viewed":{"operator":"mean"},"at_leat_one_page_viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"381__table","viz_type":"echarts_timeseries_bar","slice_id":729,"x_axis":"section/subsection - name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":"No +query_context: '{"datasource":{"id":99,"type":"table"},"force":false,"queries":[{"filters":[{"col":"visited_on","op":"TEMPORAL_RANGE","val":"No + filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"orderby":[["all_pages_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"all_pages_viewed":{"operator":"mean"},"at_leat_one_page_viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"99__table","viz_type":"echarts_timeseries_bar","slice_id":189,"x_axis":"section_subsection_name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":"No filter","expressionType":"SIMPLE","operator":"TEMPORAL_RANGE","subject":"visited_on"}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":75,"y_axis_title":"Number - of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":true,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":",d","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[629],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' + of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":false,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":",d","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[43,42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' slice_name: Page views per section/subsection uuid: bf2d6219-d633-48c1-a9b5-742eac6a4c0a version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection_at-risk.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection_at-risk.yaml index 8a57624b1..5831b554f 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection_at-risk.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_section_subsection_at-risk.yaml @@ -24,7 +24,7 @@ params: label: At least one page viewed optionName: metric_luga9plford_yed4xbi724 sqlExpression: |- - countIf("section/subsection page engagement" = 'At least one page viewed' or "section/subsection page engagement" = 'All pages viewed') + countIf("section_subsection_page_engagement" = 'At least one page viewed' or "section_subsection_page_engagement" = 'All pages viewed') - aggregate: null column: null datasourceWarning: false @@ -33,7 +33,7 @@ params: label: All pages viewed optionName: metric_u566xrvox2_qv3xavca31l sqlExpression: |- - countIf("section/subsection page engagement" = 'All pages viewed') + countIf("section_subsection_page_engagement" = 'All pages viewed') only_total: true order_desc: true orientation: vertical @@ -48,7 +48,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 45 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -63,7 +63,7 @@ params: y_axis_title_position: Left zoomable: true query_context: |- - {"datasource":{"id":1216,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section/subsection name","label":"section/subsection name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section/subsection page engagement\" = 'At least one page viewed' or \"section/subsection page engagement\" = 'All pages viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All pages viewed","optionName":"metric_u566xrvox2_qv3xavca31l","sqlExpression":"countIf(\"section/subsection page engagement\" = 'All pages viewed')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section/subsection page engagement\" = 'At least one page viewed' or \"section/subsection page engagement\" = 'All pages viewed')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection name"],"columns":[],"aggregates":{"At least one page viewed":{"operator":"mean"},"All pages viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1216__table","viz_type":"echarts_timeseries_bar","slice_id":2188,"x_axis":"section/subsection name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section/subsection page engagement\" = 'At least one page viewed' or \"section/subsection page engagement\" = 'All pages viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All pages viewed","optionName":"metric_u566xrvox2_qv3xavca31l","sqlExpression":"countIf(\"section/subsection page engagement\" = 'All pages viewed')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of Learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} + {"datasource":{"id":1216,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section_subsection_page_engagement\" = 'At least one page viewed' or \"section_subsection_page_engagement\" = 'All pages viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All pages viewed","optionName":"metric_u566xrvox2_qv3xavca31l","sqlExpression":"countIf(\"section_subsection_page_engagement\" = 'All pages viewed')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section_subsection_page_engagement\" = 'At least one page viewed' or \"section_subsection_page_engagement\" = 'All pages viewed')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"At least one page viewed":{"operator":"mean"},"All pages viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1216__table","viz_type":"echarts_timeseries_bar","slice_id":2188,"x_axis":"section_subsection_name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one page viewed","optionName":"metric_luga9plford_yed4xbi724","sqlExpression":"countIf(\"section_subsection_page_engagement\" = 'At least one page viewed' or \"section_subsection_page_engagement\" = 'All pages viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All pages viewed","optionName":"metric_u566xrvox2_qv3xavca31l","sqlExpression":"countIf(\"section_subsection_page_engagement\" = 'All pages viewed')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of Learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} slice_name: Page views per section/subsection (at-risk) uuid: 29a5cf7e-41cd-4b60-a63a-c921d6ebd997 version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_subsection.yaml new file mode 100644 index 000000000..c2d815370 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Page_views_per_subsection.yaml @@ -0,0 +1,63 @@ +_file_name: Page_views_per_subsection.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 9febd6be-5102-4dbf-86b9-45ebd3cbbc45 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: No filter + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_s8d5o5h20q_2r3i3mfdrkw + isExtra: false + isNew: false + operator: TEMPORAL_RANGE + sqlExpression: null + subject: visited_on + - clause: WHERE + comparator: null + datasourceWarning: false + expressionType: SQL + filterOptionName: filter_f90l1y3p62f_1hlgx4smg41 + isExtra: false + isNew: false + operator: null + sqlExpression: |- + subsection_with_name != '' + subject: null + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: all_pages_viewed + operator: '>' + targetValue: 0 + - colorScheme: '#FDE380' + column: at_leat_one_page_viewed + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - subsection_with_name + metrics: + - all_pages_viewed + - at_leat_one_page_viewed + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: |- + {"datasource":{"id":99,"type":"table"},"force":false,"queries":[{"filters":[{"col":"visited_on","op":"TEMPORAL_RANGE","val":"No filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":"(subsection_with_name != '')"},"applied_time_extras":{},"columns":["subsection_with_name"],"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"orderby":[["all_pages_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"99__table","viz_type":"table","slice_id":191,"query_mode":"aggregate","groupby":["subsection_with_name"],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["all_pages_viewed","at_leat_one_page_viewed"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"clause":"WHERE","comparator":"No filter","datasourceWarning":false,"expressionType":"SIMPLE","filterOptionName":"filter_s8d5o5h20q_2r3i3mfdrkw","isExtra":false,"isNew":false,"operator":"TEMPORAL_RANGE","sqlExpression":null,"subject":"visited_on"},{"clause":"WHERE","comparator":null,"datasourceWarning":false,"expressionType":"SQL","filterOptionName":"filter_f90l1y3p62f_1hlgx4smg41","isExtra":false,"isNew":false,"operator":null,"sqlExpression":"subsection_with_name != ''","subject":null}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"colorScheme":"#ACE1C4","column":"all_pages_viewed","operator":">","targetValue":0},{"colorScheme":"#FDE380","column":"at_leat_one_page_viewed","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} +slice_name: Page views per subsection +uuid: 18f85781-d604-4edf-a3e6-429e16c3040a +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video.yaml index 2058acb92..f9354c05b 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video.yaml @@ -46,8 +46,8 @@ params: y_axis_title_margin: 30 y_axis_title_position: Left zoomable: true -query_context: '{"datasource":{"id":167,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"video_name_with_location","label":"video_name_with_location","expressionType":"SQL"}],"metrics":["partial_views","full_views"],"orderby":[["partial_views",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["video_name_with_location"],"columns":[],"aggregates":{"partial_views":{"operator":"mean"},"full_views":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"167__table","viz_type":"echarts_timeseries_bar","slice_id":147,"x_axis":"video_name_with_location","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["partial_views","full_views"],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number - of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[629],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' +query_context: '{"datasource":{"id":82,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"video_name_with_location","label":"video_name_with_location","expressionType":"SQL"}],"metrics":["partial_views","full_views"],"orderby":[["partial_views",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["video_name_with_location"],"columns":[],"aggregates":{"partial_views":{"operator":"mean"},"full_views":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"adhoc_filters":[],"annotation_layers":[],"color_scheme":"supersetColors","comparison_type":"values","datasource":"82__table","extra_form_data":{},"forecastInterval":0.8,"forecastPeriods":10,"groupby":[],"legendOrientation":"top","legendType":"scroll","metrics":["partial_views","full_views"],"only_total":true,"order_desc":true,"orientation":"vertical","rich_tooltip":true,"row_limit":10000,"show_empty_columns":true,"show_legend":true,"slice_id":146,"sort_series_type":"sum","time_grain_sqla":"P1M","tooltipTimeFormat":"smart_date","truncateXAxis":true,"truncate_metric":true,"viz_type":"echarts_timeseries_bar","xAxisLabelRotation":45,"x_axis":"video_name_with_location","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"x_axis_time_format":"smart_date","x_axis_title_margin":15,"y_axis_bounds":[null,null],"y_axis_format":"SMART_NUMBER","y_axis_title":"Number + of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","zoomable":true,"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' slice_name: Partial and full views per video uuid: bfffb9fe-07bd-4b2f-b437-522d45f6cd2c version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video_table.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video_table.yaml new file mode 100644 index 000000000..ea5a9f5c1 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Partial_and_full_views_per_video_table.yaml @@ -0,0 +1,41 @@ +_file_name: Partial_and_full_views_per_video_table.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: d0070c9a-5b1c-4e52-867b-79aa46a8cdcf +description: null +params: + adhoc_filters: [] + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: full_views + operator: '>' + targetValue: 0 + - colorScheme: '#FDE380' + column: partial_views + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - video_name_with_location + metrics: + - full_views + - partial_views + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: '{"datasource":{"id":82,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":["video_name_with_location"],"metrics":["full_views","partial_views"],"orderby":[["full_views",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"82__table","viz_type":"table","slice_id":146,"query_mode":"aggregate","groupby":["video_name_with_location"],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["full_views","partial_views"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"column":"full_views","colorScheme":"#ACE1C4","operator":">","targetValue":0},{"column":"partial_views","colorScheme":"#FDE380","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' +slice_name: Partial and full views per video (table) +uuid: 54a1551c-7eb3-43fb-abd1-005816da0769 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problem_Results.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problem_Results.yaml index a46285b33..43f42d807 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problem_Results.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problem_Results.yaml @@ -17,6 +17,7 @@ params: sqlExpression: null subject: emission_time all_columns: [] + annotation_layers: [] color_pn: true column_config: '% Correct': diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section.yaml new file mode 100644 index 000000000..7d05b2a12 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section.yaml @@ -0,0 +1,66 @@ +_file_name: Problems_attempted_per_section.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 171c88e5-fd4b-4aab-b287-361fa6fa5415 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: null + datasourceWarning: false + expressionType: SQL + filterOptionName: filter_pl0jq8ekze_4ayga9dbjat + isExtra: false + isNew: false + operator: null + sqlExpression: |- + `section_subsection_name` <> '' + subject: null + - clause: WHERE + comparator: section + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_1j70lybkgj1_ygpas42b05 + isExtra: false + isNew: false + operator: == + operatorId: EQUALS + sqlExpression: null + subject: content_level + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#FDE380' + column: attempted_at_least_one_problem + operator: '>' + targetValue: 0 + - colorScheme: '#ACE1C4' + column: attempted_all_problems + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - expressionType: SQL + label: Section Name + sqlExpression: section_subsection_name + metrics: + - attempted_all_problems + - attempted_at_least_one_problem + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: |- + {"datasource":{"id":80,"type":"table"},"force":false,"queries":[{"filters":[{"col":"content_level","op":"==","val":"section"}],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"label":"Section Name","sqlExpression":"section_subsection_name","expressionType":"SQL"}],"metrics":["attempted_all_problems","attempted_at_least_one_problem"],"orderby":[["attempted_all_problems",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"80__table","viz_type":"table","slice_id":154,"query_mode":"aggregate","groupby":[{"label":"Section Name","sqlExpression":"section_subsection_name","expressionType":"SQL"}],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["attempted_all_problems","attempted_at_least_one_problem"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"expressionType":"SQL","sqlExpression":"`section_subsection_name` <> ''","clause":"WHERE","subject":null,"operator":null,"comparator":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_pl0jq8ekze_4ayga9dbjat"},{"expressionType":"SIMPLE","subject":"content_level","operator":"==","operatorId":"EQUALS","comparator":"section","clause":"WHERE","sqlExpression":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_1j70lybkgj1_ygpas42b05"}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"column":"attempted_at_least_one_problem","colorScheme":"#FDE380","operator":">","targetValue":0},{"column":"attempted_all_problems","colorScheme":"#ACE1C4","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} +slice_name: Problems attempted per section +uuid: 1d00bbc3-f0d5-4c17-b9f3-8cc4d5516950 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection.yaml index 6c379191d..08d79d300 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection.yaml @@ -15,7 +15,7 @@ params: isNew: false operator: null sqlExpression: |- - `section/subsection name` <> '' + `section_subsection_name` <> '' subject: null annotation_layers: [] color_scheme: supersetColors @@ -36,7 +36,7 @@ params: row_limit: 10000 show_empty_columns: true show_legend: true - show_value: true + show_value: false sort_series_type: sum time_grain_sqla: P1M tooltipTimeFormat: smart_date @@ -44,7 +44,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 0 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -59,7 +59,7 @@ params: y_axis_title_position: Left zoomable: true query_context: |- - {"datasource":{"id":105,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section/subsection name` <> '')"},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section/subsection name","label":"section/subsection name","expressionType":"SQL"}],"metrics":["attempted_at_least_one_problem","attempted_all_problems"],"orderby":[["attempted_at_least_one_problem",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection name"],"columns":[],"aggregates":{"attempted_at_least_one_problem":{"operator":"mean"},"attempted_all_problems":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"105__table","viz_type":"echarts_timeseries_bar","slice_id":281,"x_axis":"section/subsection name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["attempted_at_least_one_problem","attempted_all_problems"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":null,"datasourceWarning":false,"expressionType":"SQL","filterOptionName":"filter_pl0jq8ekze_4ayga9dbjat","isExtra":false,"isNew":false,"operator":null,"sqlExpression":"`section/subsection name` <> ''","subject":null}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":true,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":",d","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[629],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} + {"datasource":{"id":80,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":["attempted_at_least_one_problem","attempted_all_problems"],"orderby":[["attempted_at_least_one_problem",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"attempted_at_least_one_problem":{"operator":"mean"},"attempted_all_problems":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"80__table","viz_type":"echarts_timeseries_bar","slice_id":154,"x_axis":"section_subsection_name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["attempted_at_least_one_problem","attempted_all_problems"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":null,"datasourceWarning":false,"expressionType":"SQL","filterOptionName":"filter_pl0jq8ekze_4ayga9dbjat","isExtra":false,"isNew":false,"operator":null,"sqlExpression":"`section_subsection_name` <> ''","subject":null}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":false,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":",d","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[43,42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} slice_name: Problems attempted per section/subsection uuid: 8cdcd4aa-1fa2-41dc-b38d-f1112134592e version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection_at-risk.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection_at-risk.yaml index fb7e87d0e..2e3c1628e 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection_at-risk.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_section_subsection_at-risk.yaml @@ -24,7 +24,7 @@ params: label: At least one problem attempted optionName: metric_v9nu1yjhmes_t1ptoyn64ud sqlExpression: |- - countIf("section/subsection problem engagement" = 'At least one problem attempted' or "section/subsection problem engagement" = 'All problems attempted') + countIf("section_subsection_problem_engagement" = 'At least one problem attempted' or "section_subsection_problem_engagement" = 'All problems attempted') - aggregate: null column: null datasourceWarning: false @@ -33,7 +33,7 @@ params: label: All problems attempted optionName: metric_7b15u1sw9p_3a441hsri4m sqlExpression: |- - countIf("section/subsection problem engagement" = 'All problems attempted') + countIf("section_subsection_problem_engagement" = 'All problems attempted') only_total: true order_desc: true orientation: vertical @@ -48,7 +48,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 45 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -63,7 +63,7 @@ params: y_axis_title_position: Left zoomable: true query_context: |- - {"datasource":{"id":1175,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section/subsection name","label":"section/subsection name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section/subsection problem engagement\" = 'At least one problem attempted' or \"section/subsection problem engagement\" = 'All problems attempted')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All problems attempted","optionName":"metric_7b15u1sw9p_3a441hsri4m","sqlExpression":"countIf(\"section/subsection problem engagement\" = 'All problems attempted')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section/subsection problem engagement\" = 'At least one problem attempted' or \"section/subsection problem engagement\" = 'All problems attempted')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection name"],"columns":[],"aggregates":{"At least one problem attempted":{"operator":"mean"},"All problems attempted":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1175__table","viz_type":"echarts_timeseries_bar","slice_id":2108,"x_axis":"section/subsection name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section/subsection problem engagement\" = 'At least one problem attempted' or \"section/subsection problem engagement\" = 'All problems attempted')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All problems attempted","optionName":"metric_7b15u1sw9p_3a441hsri4m","sqlExpression":"countIf(\"section/subsection problem engagement\" = 'All problems attempted')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} + {"datasource":{"id":1175,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section_subsection_problem_engagement\" = 'At least one problem attempted' or \"section_subsection_problem_engagement\" = 'All problems attempted')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All problems attempted","optionName":"metric_7b15u1sw9p_3a441hsri4m","sqlExpression":"countIf(\"section_subsection_problem_engagement\" = 'All problems attempted')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section_subsection_problem_engagement\" = 'At least one problem attempted' or \"section_subsection_problem_engagement\" = 'All problems attempted')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"At least one problem attempted":{"operator":"mean"},"All problems attempted":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1175__table","viz_type":"echarts_timeseries_bar","slice_id":2108,"x_axis":"section_subsection_name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one problem attempted","optionName":"metric_v9nu1yjhmes_t1ptoyn64ud","sqlExpression":"countIf(\"section_subsection_problem_engagement\" = 'At least one problem attempted' or \"section_subsection_problem_engagement\" = 'All problems attempted')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All problems attempted","optionName":"metric_7b15u1sw9p_3a441hsri4m","sqlExpression":"countIf(\"section_subsection_problem_engagement\" = 'All problems attempted')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} slice_name: Problems attempted per section/subsection (at-risk) uuid: 5015477d-d166-4823-868d-c7883d195bab version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_subsection.yaml new file mode 100644 index 000000000..fc9a88582 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Problems_attempted_per_subsection.yaml @@ -0,0 +1,66 @@ +_file_name: Problems_attempted_per_subsection.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 171c88e5-fd4b-4aab-b287-361fa6fa5415 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: null + datasourceWarning: false + expressionType: SQL + filterOptionName: filter_pl0jq8ekze_4ayga9dbjat + isExtra: false + isNew: false + operator: null + sqlExpression: |- + `section_subsection_name` <> '' + subject: null + - clause: WHERE + comparator: subsection + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_1j70lybkgj1_ygpas42b05 + isExtra: false + isNew: false + operator: == + operatorId: EQUALS + sqlExpression: null + subject: content_level + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#FDE380' + column: attempted_at_least_one_problem + operator: '>' + targetValue: 0 + - colorScheme: '#ACE1C4' + column: attempted_all_problems + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - expressionType: SQL + label: Subsection Name + sqlExpression: section_subsection_name + metrics: + - attempted_all_problems + - attempted_at_least_one_problem + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: |- + {"datasource":{"id":80,"type":"table"},"force":false,"queries":[{"filters":[{"col":"content_level","op":"==","val":"subsection"}],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"expressionType":"SQL","label":"Subsection Name","sqlExpression":"section_subsection_name"}],"metrics":["attempted_all_problems","attempted_at_least_one_problem"],"orderby":[["attempted_all_problems",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"80__table","viz_type":"table","slice_id":194,"query_mode":"aggregate","groupby":[{"expressionType":"SQL","label":"Subsection Name","sqlExpression":"section_subsection_name"}],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["attempted_all_problems","attempted_at_least_one_problem"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"expressionType":"SQL","sqlExpression":"`section_subsection_name` <> ''","clause":"WHERE","subject":null,"operator":null,"comparator":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_pl0jq8ekze_4ayga9dbjat"},{"expressionType":"SIMPLE","subject":"content_level","operator":"==","operatorId":"EQUALS","comparator":"subsection","clause":"WHERE","sqlExpression":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_1j70lybkgj1_ygpas42b05"}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"colorScheme":"#FDE380","column":"attempted_at_least_one_problem","operator":">","targetValue":0},{"colorScheme":"#ACE1C4","column":"attempted_all_problems","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} +slice_name: Problems attempted per subsection +uuid: b3516698-35fe-4934-862a-7f5fb869d322 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_Views_per_Section_Subsection_at-risk.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_Views_per_Section_Subsection_at-risk.yaml index 2f0e727a5..84ef311b3 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_Views_per_Section_Subsection_at-risk.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_Views_per_Section_Subsection_at-risk.yaml @@ -24,7 +24,7 @@ params: label: At least one video viewed optionName: metric_pw80mjg37y_lphzw7gkrx sqlExpression: |- - countIf("section/subsection video engagement" = 'At least one video viewed' or "section/subsection video engagement" = 'All videos viewed') + countIf("section_subsection_video_engagement" = 'At least one video viewed' or "section_subsection_video_engagement" = 'All videos viewed') - aggregate: null column: null datasourceWarning: false @@ -33,7 +33,7 @@ params: label: All videos viewed optionName: metric_smvgjzqh7lg_ida1817fs1 sqlExpression: |- - countIf("section/subsection video engagement" = 'All videos viewed') + countIf("section_subsection_video_engagement" = 'All videos viewed') only_total: true order_desc: true orientation: vertical @@ -48,7 +48,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 45 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -63,7 +63,7 @@ params: y_axis_title_position: Left zoomable: true query_context: |- - {"datasource":{"id":1201,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section/subsection name","label":"section/subsection name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section/subsection video engagement\" = 'At least one video viewed' or \"section/subsection video engagement\" = 'All videos viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All videos viewed","optionName":"metric_smvgjzqh7lg_ida1817fs1","sqlExpression":"countIf(\"section/subsection video engagement\" = 'All videos viewed')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section/subsection video engagement\" = 'At least one video viewed' or \"section/subsection video engagement\" = 'All videos viewed')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection name"],"columns":[],"aggregates":{"At least one video viewed":{"operator":"mean"},"All videos viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1201__table","viz_type":"echarts_timeseries_bar","slice_id":2707,"x_axis":"section/subsection name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section/subsection video engagement\" = 'At least one video viewed' or \"section/subsection video engagement\" = 'All videos viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All videos viewed","optionName":"metric_smvgjzqh7lg_ida1817fs1","sqlExpression":"countIf(\"section/subsection video engagement\" = 'All videos viewed')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of Learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} + {"datasource":{"id":1201,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1D","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1D","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section_subsection_video_engagement\" = 'At least one video viewed' or \"section_subsection_video_engagement\" = 'All videos viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All videos viewed","optionName":"metric_smvgjzqh7lg_ida1817fs1","sqlExpression":"countIf(\"section_subsection_video_engagement\" = 'All videos viewed')"}],"orderby":[[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section_subsection_video_engagement\" = 'At least one video viewed' or \"section_subsection_video_engagement\" = 'All videos viewed')"},false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"At least one video viewed":{"operator":"mean"},"All videos viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"1201__table","viz_type":"echarts_timeseries_bar","slice_id":2707,"x_axis":"section_subsection_name","time_grain_sqla":"P1D","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":[{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"At least one video viewed","optionName":"metric_pw80mjg37y_lphzw7gkrx","sqlExpression":"countIf(\"section_subsection_video_engagement\" = 'At least one video viewed' or \"section_subsection_video_engagement\" = 'All videos viewed')"},{"aggregate":null,"column":null,"datasourceWarning":false,"expressionType":"SQL","hasCustomLabel":true,"label":"All videos viewed","optionName":"metric_smvgjzqh7lg_ida1817fs1","sqlExpression":"countIf(\"section_subsection_video_engagement\" = 'All videos viewed')"}],"groupby":[],"adhoc_filters":[],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of Learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":45,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[6096],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} slice_name: Video Views per Section/Subsection (at-risk) uuid: 5d0329f4-2a4a-4cd4-8b4e-926568d1bbcc version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section.yaml new file mode 100644 index 000000000..31d1147cc --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section.yaml @@ -0,0 +1,66 @@ +_file_name: Video_views_per_section.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 247a55b3-d44e-442e-ba92-71bf7976b192 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: null + datasourceWarning: false + expressionType: SQL + filterOptionName: filter_1eznhnyjr5k_wylhwvlq7z + isExtra: false + isNew: false + operator: null + sqlExpression: |- + `section_subsection_name` <> '' + subject: null + - clause: WHERE + comparator: section + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_9uxf3jzunuu_agqd5zk40wm + isExtra: false + isNew: false + operator: == + operatorId: EQUALS + sqlExpression: null + subject: content_level + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: all_videos_viewed + operator: '>' + targetValue: 0 + - colorScheme: '#FDE380' + column: at_least_one_viewed + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - expressionType: SQL + label: Section Name + sqlExpression: section_subsection_name + metrics: + - all_videos_viewed + - at_least_one_viewed + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: |- + {"datasource":{"id":95,"type":"table"},"force":false,"queries":[{"filters":[{"col":"content_level","op":"==","val":"section"}],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"label":"Section Name","sqlExpression":"section_subsection_name","expressionType":"SQL"}],"metrics":["all_videos_viewed","at_least_one_viewed"],"orderby":[["all_videos_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"95__table","viz_type":"table","slice_id":196,"query_mode":"aggregate","groupby":[{"label":"Section Name","sqlExpression":"section_subsection_name","expressionType":"SQL"}],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["all_videos_viewed","at_least_one_viewed"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"expressionType":"SQL","sqlExpression":"`section_subsection_name` <> ''","clause":"WHERE","subject":null,"operator":null,"comparator":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_1eznhnyjr5k_wylhwvlq7z"},{"expressionType":"SIMPLE","subject":"content_level","operator":"==","operatorId":"EQUALS","comparator":"section","clause":"WHERE","sqlExpression":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_9uxf3jzunuu_agqd5zk40wm"}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"column":"all_videos_viewed","colorScheme":"#ACE1C4","operator":">","targetValue":0},{"column":"at_least_one_viewed","colorScheme":"#FDE380","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} +slice_name: Video views per section +uuid: 0744f1bf-1636-4735-861b-18a6f1e825a2 +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section_subsection.yaml index ec4342ffd..42589dfdf 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section_subsection.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_section_subsection.yaml @@ -15,7 +15,7 @@ params: isNew: false operator: null sqlExpression: |- - `section/subsection name` <> '' + `section_subsection_name` <> '' subject: null annotation_layers: [] color_scheme: supersetColors @@ -36,7 +36,7 @@ params: row_limit: 10000 show_empty_columns: true show_legend: true - show_value: true + show_value: false sort_series_type: sum time_grain_sqla: P1M tooltipTimeFormat: smart_date @@ -44,7 +44,7 @@ params: truncate_metric: true viz_type: echarts_timeseries_bar xAxisLabelRotation: 0 - x_axis: section/subsection name + x_axis: section_subsection_name x_axis_sort_asc: true x_axis_sort_series: name x_axis_sort_series_ascending: true @@ -59,7 +59,7 @@ params: y_axis_title_position: Left zoomable: true query_context: |- - {"datasource":{"id":301,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section/subsection name` <> '')"},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section/subsection name","label":"section/subsection name","expressionType":"SQL"}],"metrics":["all_videos_viewed","at_least_one_viewed"],"orderby":[["all_videos_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section/subsection name"],"columns":[],"aggregates":{"all_videos_viewed":{"operator":"mean"},"at_least_one_viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"301__table","viz_type":"echarts_timeseries_bar","slice_id":458,"x_axis":"section/subsection name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["all_videos_viewed","at_least_one_viewed"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":null,"datasourceWarning":false,"expressionType":"SQL","filterOptionName":"filter_1eznhnyjr5k_wylhwvlq7z","isExtra":false,"isNew":false,"operator":null,"sqlExpression":"`section/subsection name` <> ''","subject":null}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":true,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[629],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} + {"datasource":{"id":95,"type":"table"},"force":false,"queries":[{"filters":[],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"section_subsection_name","label":"section_subsection_name","expressionType":"SQL"}],"metrics":["all_videos_viewed","at_least_one_viewed"],"orderby":[["all_videos_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["section_subsection_name"],"columns":[],"aggregates":{"all_videos_viewed":{"operator":"mean"},"at_least_one_viewed":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"95__table","viz_type":"echarts_timeseries_bar","slice_id":165,"x_axis":"section_subsection_name","time_grain_sqla":"P1M","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["all_videos_viewed","at_least_one_viewed"],"groupby":[],"adhoc_filters":[{"clause":"WHERE","comparator":null,"datasourceWarning":false,"expressionType":"SQL","filterOptionName":"filter_1eznhnyjr5k_wylhwvlq7z","isExtra":false,"isNew":false,"operator":null,"sqlExpression":"`section_subsection_name` <> ''","subject":null}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title_margin":15,"y_axis_title":"Number of learners","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","show_value":false,"only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","xAxisLabelRotation":0,"y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[43,42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} slice_name: Video views per section/subsection uuid: c1f77432-e55f-4473-b7d0-7a1c3976e6a8 version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_subsection.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_subsection.yaml new file mode 100644 index 000000000..d92f1bbf2 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Video_views_per_subsection.yaml @@ -0,0 +1,66 @@ +_file_name: Video_views_per_subsection.yaml +cache_timeout: null +certification_details: null +certified_by: null +dataset_uuid: 247a55b3-d44e-442e-ba92-71bf7976b192 +description: null +params: + adhoc_filters: + - clause: WHERE + comparator: null + datasourceWarning: false + expressionType: SQL + filterOptionName: filter_1eznhnyjr5k_wylhwvlq7z + isExtra: false + isNew: false + operator: null + sqlExpression: |- + `section_subsection_name` <> '' + subject: null + - clause: WHERE + comparator: subsection + datasourceWarning: false + expressionType: SIMPLE + filterOptionName: filter_9uxf3jzunuu_agqd5zk40wm + isExtra: false + isNew: false + operator: == + operatorId: EQUALS + sqlExpression: null + subject: content_level + all_columns: [] + color_pn: true + conditional_formatting: + - colorScheme: '#ACE1C4' + column: all_videos_viewed + operator: '>' + targetValue: 0 + - colorScheme: '#FDE380' + column: at_least_one_viewed + operator: '>' + targetValue: 0 + extra_form_data: {} + groupby: + - expressionType: SQL + label: Subsection Name + sqlExpression: section_subsection_name + metrics: + - all_videos_viewed + - at_least_one_viewed + order_by_cols: [] + order_desc: true + percent_metrics: [] + query_mode: aggregate + row_limit: 10000 + server_page_length: 10 + show_cell_bars: true + table_timestamp_format: smart_date + temporal_columns_lookup: {} + time_grain_sqla: P1M + viz_type: table +query_context: |- + {"datasource":{"id":95,"type":"table"},"force":false,"queries":[{"filters":[{"col":"content_level","op":"==","val":"subsection"}],"extras":{"time_grain_sqla":"P1M","having":"","where":"(`section_subsection_name` <> '')"},"applied_time_extras":{},"columns":[{"expressionType":"SQL","label":"Subsection Name","sqlExpression":"section_subsection_name"}],"metrics":["all_videos_viewed","at_least_one_viewed"],"orderby":[["all_videos_viewed",false]],"annotation_layers":[],"row_limit":10000,"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"post_processing":[]}],"form_data":{"datasource":"95__table","viz_type":"table","slice_id":196,"query_mode":"aggregate","groupby":[{"expressionType":"SQL","label":"Subsection Name","sqlExpression":"section_subsection_name"}],"time_grain_sqla":"P1M","temporal_columns_lookup":{},"metrics":["all_videos_viewed","at_least_one_viewed"],"all_columns":[],"percent_metrics":[],"adhoc_filters":[{"expressionType":"SQL","sqlExpression":"`section_subsection_name` <> ''","clause":"WHERE","subject":null,"operator":null,"comparator":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_1eznhnyjr5k_wylhwvlq7z"},{"expressionType":"SIMPLE","subject":"content_level","operator":"==","operatorId":"EQUALS","comparator":"subsection","clause":"WHERE","sqlExpression":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_9uxf3jzunuu_agqd5zk40wm"}],"order_by_cols":[],"row_limit":10000,"server_page_length":10,"order_desc":true,"table_timestamp_format":"smart_date","show_cell_bars":true,"color_pn":true,"conditional_formatting":[{"colorScheme":"#ACE1C4","column":"all_videos_viewed","operator":">","targetValue":0},{"colorScheme":"#FDE380","column":"at_least_one_viewed","operator":">","targetValue":0}],"extra_form_data":{},"dashboards":[42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"} +slice_name: Video views per subsection +uuid: cf5b6eb7-d22c-4dda-bd4e-ee2401f337cc +version: 1.0.0 +viz_type: table diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Watched_Video_Segments.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Watched_Video_Segments.yaml index 377bc5882..545ad7617 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Watched_Video_Segments.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/charts/Watched_Video_Segments.yaml @@ -48,17 +48,20 @@ params: x_axis_sort_series: name x_axis_sort_series_ascending: true x_axis_time_format: smart_date - x_axis_title_margin: 15 + x_axis_title: Number of Views + x_axis_title_margin: 30 y_axis_bounds: - null - null y_axis_format: SMART_NUMBER - y_axis_title_margin: 15 + y_axis_title: Video Timestamp (in seconds) + y_axis_title_margin: 30 y_axis_title_position: Left zoomable: true -query_context: '{"datasource":{"id":406,"type":"table"},"force":false,"queries":[{"filters":[{"col":"started_at","op":"TEMPORAL_RANGE","val":"No - filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"start_position","label":"start_position","expressionType":"SQL"}],"metrics":["total_views","repeat_views"],"orderby":[["total_views",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["start_position"],"columns":[],"aggregates":{"total_views":{"operator":"mean"},"repeat_views":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"adhoc_filters":[{"clause":"WHERE","comparator":"No - filter","datasourceWarning":false,"expressionType":"SIMPLE","filterOptionName":"filter_kpkhcnms3c_m156a9ez5ga","isExtra":false,"isNew":false,"operator":"TEMPORAL_RANGE","sqlExpression":null,"subject":"started_at"}],"annotation_layers":[],"color_scheme":"supersetColors","comparison_type":"values","datasource":"406__table","extra_form_data":{},"forecastInterval":0.8,"forecastPeriods":10,"groupby":[],"legendOrientation":"top","legendType":"scroll","metrics":["total_views","repeat_views"],"only_total":true,"order_desc":true,"orientation":"vertical","rich_tooltip":true,"row_limit":10000,"show_empty_columns":true,"show_legend":true,"slice_id":696,"sort_series_type":"sum","stack":"Stack","time_grain_sqla":"P1M","tooltipTimeFormat":"smart_date","truncateXAxis":true,"truncate_metric":true,"viz_type":"echarts_timeseries_bar","xAxisForceCategorical":true,"x_axis":"start_position","x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"x_axis_time_format":"smart_date","x_axis_title_margin":15,"y_axis_bounds":[null,null],"y_axis_format":"SMART_NUMBER","y_axis_title_margin":15,"y_axis_title_position":"Left","zoomable":true,"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' +query_context: '{"datasource":{"id":103,"type":"table"},"force":false,"queries":[{"filters":[{"col":"started_at","op":"TEMPORAL_RANGE","val":"No + filter"}],"extras":{"time_grain_sqla":"P1M","having":"","where":""},"applied_time_extras":{},"columns":[{"timeGrain":"P1M","columnType":"BASE_AXIS","sqlExpression":"start_position","label":"start_position","expressionType":"SQL"}],"metrics":["total_views","repeat_views"],"orderby":[["total_views",false]],"annotation_layers":[],"row_limit":10000,"series_columns":[],"series_limit":0,"order_desc":true,"url_params":{},"custom_params":{},"custom_form_data":{},"time_offsets":[],"post_processing":[{"operation":"pivot","options":{"index":["start_position"],"columns":[],"aggregates":{"total_views":{"operator":"mean"},"repeat_views":{"operator":"mean"}},"drop_missing_columns":false}},{"operation":"flatten"}]}],"form_data":{"datasource":"103__table","viz_type":"echarts_timeseries_bar","slice_id":186,"x_axis":"start_position","time_grain_sqla":"P1M","xAxisForceCategorical":true,"x_axis_sort_asc":true,"x_axis_sort_series":"name","x_axis_sort_series_ascending":true,"metrics":["total_views","repeat_views"],"groupby":[],"adhoc_filters":[{"expressionType":"SIMPLE","subject":"started_at","operator":"TEMPORAL_RANGE","comparator":"No + filter","clause":"WHERE","sqlExpression":null,"isExtra":false,"isNew":false,"datasourceWarning":false,"filterOptionName":"filter_kpkhcnms3c_m156a9ez5ga"}],"order_desc":true,"row_limit":10000,"truncate_metric":true,"show_empty_columns":true,"comparison_type":"values","annotation_layers":[],"forecastPeriods":10,"forecastInterval":0.8,"orientation":"vertical","x_axis_title":"Number + of Views","x_axis_title_margin":30,"y_axis_title":"Video Timestamp (in seconds)","y_axis_title_margin":30,"y_axis_title_position":"Left","sort_series_type":"sum","color_scheme":"supersetColors","stack":"Stack","only_total":true,"zoomable":true,"show_legend":true,"legendType":"scroll","legendOrientation":"top","x_axis_time_format":"smart_date","y_axis_format":"SMART_NUMBER","truncateXAxis":true,"y_axis_bounds":[null,null],"rich_tooltip":true,"tooltipTimeFormat":"smart_date","extra_form_data":{},"dashboards":[43,42],"force":false,"result_format":"json","result_type":"full"},"result_format":"json","result_type":"full"}' slice_name: Watched Video Segments uuid: 2985a9db-c338-4008-af52-2930b81ee2e5 version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner.yaml new file mode 100644 index 000000000..f81fa06d1 --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner.yaml @@ -0,0 +1,1018 @@ +_file_name: Individual_Learner.yaml +_roles: +- '{{ SUPERSET_ROLES_MAPPING.instructor }}' +certification_details: null +certified_by: null +css: '' +dashboard_title: Individual Learner +description: null +metadata: + chart_configuration: + '146': + crossFilters: + chartsInScope: + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 146 + '154': + crossFilters: + chartsInScope: + - 146 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 154 + '165': + crossFilters: + chartsInScope: + - 146 + - 154 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 165 + '184': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 184 + '186': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 186 + '189': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 189 + '191': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 191 + '192': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 192 + '193': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 193 + '194': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 195 + - 196 + - 197 + - 198 + scope: global + id: 194 + '195': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 196 + - 197 + - 198 + scope: global + id: 195 + '196': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 197 + - 198 + scope: global + id: 196 + '197': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 198 + scope: global + id: 197 + '198': + crossFilters: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + scope: global + id: 198 + color_scheme: supersetColors + color_scheme_domain: + - '#1FA8C9' + - '#454E7C' + - '#5AC189' + - '#FF7F44' + - '#666666' + - '#E04355' + - '#FCC700' + - '#A868B7' + - '#3CCCCB' + - '#A38F79' + - '#8FD3E4' + - '#A1A6BD' + - '#ACE1C4' + - '#FEC0A1' + - '#B2B2B2' + - '#EFA1AA' + - '#FDE380' + - '#D3B3DA' + - '#9EE5E5' + - '#D1C6BC' + cross_filters_enabled: true + default_filters: '{}' + expanded_slices: {} + global_chart_configuration: + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + scope: + excluded: [] + rootPath: + - ROOT_ID + label_colors: {} + native_filter_configuration: + - cascadeParentIds: [] + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: true + enableEmptyFilter: true + inverseSelection: false + multiSelect: false + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER-MzsGTTmWI + name: Organization + requiredFirst: true + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: org + datasetUuid: 38488934-35ee-5404-9acc-7e67626ddfae + type: NATIVE_FILTER + - cascadeParentIds: + - NATIVE_FILTER-MzsGTTmWI + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: false + enableEmptyFilter: false + inverseSelection: false + multiSelect: false + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER-Yi2j6NjTP + name: Course Name + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: course_name + datasetUuid: 38488934-35ee-5404-9acc-7e67626ddfae + type: NATIVE_FILTER + - cascadeParentIds: + - NATIVE_FILTER-MzsGTTmWI + - NATIVE_FILTER-Yi2j6NjTP + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: false + enableEmptyFilter: false + inverseSelection: false + multiSelect: false + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER-7d8oQvnW_ + name: Course Run + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: course_run + datasetUuid: 38488934-35ee-5404-9acc-7e67626ddfae + type: NATIVE_FILTER + - cascadeParentIds: + - NATIVE_FILTER-MzsGTTmWI + - NATIVE_FILTER-Yi2j6NjTP + - NATIVE_FILTER-7d8oQvnW_ + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: false + enableEmptyFilter: false + inverseSelection: false + multiSelect: true + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER-FDZVMcK41 + name: Username + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: username + datasetUuid: da75efef-09ba-4ed0-8b6b-bf11c5c26008 + type: NATIVE_FILTER + - cascadeParentIds: + - NATIVE_FILTER-MzsGTTmWI + - NATIVE_FILTER-Yi2j6NjTP + - NATIVE_FILTER-7d8oQvnW_ + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: false + enableEmptyFilter: false + inverseSelection: false + multiSelect: true + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER--paj-jENo + name: Name + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: name + datasetUuid: da75efef-09ba-4ed0-8b6b-bf11c5c26008 + type: NATIVE_FILTER + - cascadeParentIds: + - NATIVE_FILTER-MzsGTTmWI + - NATIVE_FILTER-Yi2j6NjTP + - NATIVE_FILTER-7d8oQvnW_ + chartsInScope: + - 146 + - 154 + - 165 + - 184 + - 186 + - 189 + - 191 + - 192 + - 193 + - 194 + - 195 + - 196 + - 197 + - 198 + controlValues: + defaultToFirstItem: false + enableEmptyFilter: false + inverseSelection: false + multiSelect: true + searchAllOptions: true + defaultDataMask: + extraFormData: {} + filterState: {} + ownState: {} + description: '' + filterType: filter_select + id: NATIVE_FILTER-J3AnrJVxn + name: Email + scope: + excluded: [] + rootPath: + - ROOT_ID + tabsInScope: + - TAB-60D1MfEOi + - TAB-Fq7aRqpYF + - TAB-LMmJ7FePiY + targets: + - column: + name: email + datasetUuid: da75efef-09ba-4ed0-8b6b-bf11c5c26008 + type: NATIVE_FILTER + refresh_frequency: 0 + shared_label_colors: {} + timed_refresh_immune_slices: [] +position: + CHART-3L0xSxskX4: + children: [] + id: CHART-3L0xSxskX4 + meta: + chartId: 154 + height: 56 + sliceName: Problems attempted per section/subsection + uuid: 8cdcd4aa-1fa2-41dc-b38d-f1112134592e + width: 12 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + - ROW-xE_A6-vwtl + type: CHART + CHART-4zWYZE6VQm: + children: [] + id: CHART-4zWYZE6VQm + meta: + chartId: 189 + height: 50 + sliceName: Page views per section/subsection + uuid: bf2d6219-d633-48c1-a9b5-742eac6a4c0a + width: 12 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-LMmJ7FePiY + - ROW-MQHlnu6cfD + type: CHART + CHART-BmEG_m0R8l: + children: [] + id: CHART-BmEG_m0R8l + meta: + chartId: 186 + height: 50 + sliceName: Watched Video Segments + uuid: 2985a9db-c338-4008-af52-2930b81ee2e5 + width: 12 + parents: + - ROOT_ID + - GRID_ID + - ROW-sg7fHPg8ZH + type: CHART + CHART-OJrXW113HX: + children: [] + id: CHART-OJrXW113HX + meta: + chartId: 184 + height: 50 + sliceName: Problem Results + uuid: 6df96404-8c09-4a52-96c8-9a60a92cec29 + width: 12 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + - ROW-4SRphw6cO_ + type: CHART + CHART-explore-191-1: + children: [] + id: CHART-explore-191-1 + meta: + chartId: 191 + height: 50 + sliceName: Page views per subsection + uuid: 18f85781-d604-4edf-a3e6-429e16c3040a + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-LMmJ7FePiY + - ROW-_lnlkQEqi + type: CHART + CHART-explore-192-1: + children: [] + id: CHART-explore-192-1 + meta: + chartId: 192 + height: 50 + sliceName: Page views per section + uuid: 834ec7c4-ead8-4dea-b227-1c8be5fbb1d3 + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-LMmJ7FePiY + - ROW-_lnlkQEqi + type: CHART + CHART-explore-194-1: + children: [] + id: CHART-explore-194-1 + meta: + chartId: 194 + height: 50 + sliceName: Problems attempted per section + uuid: 1d00bbc3-f0d5-4c17-b9f3-8cc4d5516950 + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + - ROW-puj-bYhiT + type: CHART + CHART-explore-195-1: + children: [] + id: CHART-explore-195-1 + meta: + chartId: 195 + height: 50 + sliceName: Problems attempted per subsection + uuid: b3516698-35fe-4934-862a-7f5fb869d322 + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + - ROW-puj-bYhiT + type: CHART + CHART-explore-196-1: + children: [] + id: CHART-explore-196-1 + meta: + chartId: 196 + height: 50 + sliceName: Video views per section + uuid: 0744f1bf-1636-4735-861b-18a6f1e825a2 + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + - ROW-M3d-eg-14 + type: CHART + CHART-explore-197-1: + children: [] + id: CHART-explore-197-1 + meta: + chartId: 197 + height: 50 + sliceName: Video views per subsection + uuid: cf5b6eb7-d22c-4dda-bd4e-ee2401f337cc + width: 6 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + - ROW-M3d-eg-14 + type: CHART + CHART-explore-198-1: + children: [] + id: CHART-explore-198-1 + meta: + chartId: 198 + height: 50 + sliceName: Partial and full views per video (table) + uuid: 54a1551c-7eb3-43fb-abd1-005816da0769 + width: 4 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + - ROW-GHcajTlc0_ + type: CHART + CHART-hZ8cIzkMoC: + children: [] + id: CHART-hZ8cIzkMoC + meta: + chartId: 146 + height: 50 + sliceName: Partial and full views per video + uuid: bfffb9fe-07bd-4b2f-b437-522d45f6cd2c + width: 8 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + - ROW-GHcajTlc0_ + type: CHART + CHART-nw620qu42a: + children: [] + id: CHART-nw620qu42a + meta: + chartId: 193 + height: 50 + sliceName: Learner Summary + uuid: 6da50964-000e-4342-a931-3881feb02c13 + width: 12 + parents: + - ROOT_ID + - GRID_ID + - ROW-sVF0AhzNN + type: CHART + CHART-ykpHXAV6JN: + children: [] + id: CHART-ykpHXAV6JN + meta: + chartId: 165 + height: 50 + sliceName: Video views per section/subsection + uuid: c1f77432-e55f-4473-b7d0-7a1c3976e6a8 + width: 12 + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + - ROW-x1abcgAxvv + type: CHART + DASHBOARD_VERSION_KEY: v2 + GRID_ID: + children: + - ROW-sVF0AhzNN + - TABS-z_NjtdPFvn + id: GRID_ID + parents: + - ROOT_ID + type: GRID + HEADER_ID: + id: HEADER_ID + meta: + text: Individual Learner + type: HEADER + ROOT_ID: + children: + - GRID_ID + id: ROOT_ID + type: ROOT + ROW-4SRphw6cO_: + children: + - CHART-OJrXW113HX + id: ROW-4SRphw6cO_ + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + type: ROW + ROW-GHcajTlc0_: + children: + - CHART-explore-198-1 + - CHART-hZ8cIzkMoC + id: ROW-GHcajTlc0_ + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + type: ROW + ROW-KtlMMWSC_: + children: + - CHART-BmEG_m0R8l + id: ROW-KtlMMWSC_ + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + type: ROW + ROW-M3d-eg-14: + children: + - CHART-explore-196-1 + - CHART-explore-197-1 + id: ROW-M3d-eg-14 + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + type: ROW + ROW-MQHlnu6cfD: + children: + - CHART-4zWYZE6VQm + id: ROW-MQHlnu6cfD + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-LMmJ7FePiY + type: ROW + ROW-_lnlkQEqi: + children: + - CHART-explore-192-1 + - CHART-explore-191-1 + id: ROW-_lnlkQEqi + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-LMmJ7FePiY + type: ROW + ROW-puj-bYhiT: + children: + - CHART-explore-194-1 + - CHART-explore-195-1 + id: ROW-puj-bYhiT + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + type: ROW + ROW-sVF0AhzNN: + children: + - CHART-nw620qu42a + id: ROW-sVF0AhzNN + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + type: ROW + ROW-x1abcgAxvv: + children: + - CHART-ykpHXAV6JN + id: ROW-x1abcgAxvv + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-60D1MfEOi + type: ROW + ROW-xE_A6-vwtl: + children: + - CHART-3L0xSxskX4 + id: ROW-xE_A6-vwtl + meta: + background: BACKGROUND_TRANSPARENT + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + - TAB-Fq7aRqpYF + type: ROW + TAB-60D1MfEOi: + children: + - ROW-x1abcgAxvv + - ROW-M3d-eg-14 + - ROW-GHcajTlc0_ + - ROW-KtlMMWSC_ + id: TAB-60D1MfEOi + meta: + defaultText: Tab title + placeholder: Tab title + text: Videos + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + type: TAB + TAB-Fq7aRqpYF: + children: + - ROW-xE_A6-vwtl + - ROW-puj-bYhiT + - ROW-4SRphw6cO_ + id: TAB-Fq7aRqpYF + meta: + defaultText: Tab title + placeholder: Tab title + text: Problems + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + type: TAB + TAB-LMmJ7FePiY: + children: + - ROW-MQHlnu6cfD + - ROW-_lnlkQEqi + id: TAB-LMmJ7FePiY + meta: + defaultText: Tab title + placeholder: Tab title + text: Pages + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + type: TAB + TAB-WiII4IsHA: + children: [] + id: TAB-WiII4IsHA + meta: + defaultText: Tab title + placeholder: Tab title + text: Help + parents: + - ROOT_ID + - GRID_ID + - TABS-z_NjtdPFvn + type: TAB + TABS-z_NjtdPFvn: + children: + - TAB-LMmJ7FePiY + - TAB-Fq7aRqpYF + - TAB-60D1MfEOi + - TAB-WiII4IsHA + id: TABS-z_NjtdPFvn + meta: {} + parents: + - ROOT_ID + - GRID_ID + type: TABS +published: true +slug: individual-learner +uuid: abae8a25-1ba4-4653-81bd-d3937a162a11 +version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner_Reports.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner_Reports.yaml deleted file mode 100644 index 66efc1038..000000000 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/dashboards/Individual_Learner_Reports.yaml +++ /dev/null @@ -1,67 +0,0 @@ -_file_name: Individual_Learner_Reports.yaml -_roles: -- '{{ SUPERSET_ROLES_MAPPING.instructor }}' -certification_details: null -certified_by: null -css: '' -dashboard_title: Individual Learner Reports -description: null -metadata: - chart_configuration: {} - color_scheme: supersetColors - color_scheme_domain: - - '#1FA8C9' - - '#454E7C' - - '#5AC189' - - '#FF7F44' - - '#666666' - - '#E04355' - - '#FCC700' - - '#A868B7' - - '#3CCCCB' - - '#A38F79' - - '#8FD3E4' - - '#A1A6BD' - - '#ACE1C4' - - '#FEC0A1' - - '#B2B2B2' - - '#EFA1AA' - - '#FDE380' - - '#D3B3DA' - - '#9EE5E5' - - '#D1C6BC' - cross_filters_enabled: true - default_filters: '{}' - expanded_slices: {} - global_chart_configuration: - chartsInScope: [] - scope: - excluded: [] - rootPath: - - ROOT_ID - label_colors: {} - refresh_frequency: 0 - shared_label_colors: {} - timed_refresh_immune_slices: [] -position: - DASHBOARD_VERSION_KEY: v2 - GRID_ID: - children: [] - id: GRID_ID - parents: - - ROOT_ID - type: GRID - HEADER_ID: - id: HEADER_ID - meta: - text: Individual Learner Dashboard - type: HEADER - ROOT_ID: - children: - - GRID_ID - id: ROOT_ID - type: ROOT -published: true -slug: individual-learner -uuid: abae8a25-1ba4-4653-81bd-d3937a162a11 -version: 1.0.0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/at_risk_problem_results.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/at_risk_problem_results.yaml index 3632d3bce..6aaded828 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/at_risk_problem_results.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/at_risk_problem_results.yaml @@ -14,7 +14,7 @@ columns: is_dttm: false python_date_format: null type: null - verbose_name: null + verbose_name: Result - advanced_data_type: null column_name: attempts description: null @@ -27,7 +27,7 @@ columns: is_dttm: false python_date_format: null type: Int16 - verbose_name: null + verbose_name: Attempts - advanced_data_type: null column_name: success description: null @@ -40,7 +40,7 @@ columns: is_dttm: false python_date_format: null type: Bool - verbose_name: null + verbose_name: Success - advanced_data_type: null column_name: emission_time description: null @@ -53,7 +53,7 @@ columns: is_dttm: true python_date_format: null type: DateTime - verbose_name: null + verbose_name: Emission Time - advanced_data_type: null column_name: problem_name_with_location description: null @@ -66,7 +66,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Problem Name With Location - advanced_data_type: null column_name: problem_name description: null @@ -79,7 +79,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Problem Name - advanced_data_type: null column_name: actor_id description: null @@ -92,7 +92,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Actor ID - advanced_data_type: null column_name: course_name description: null @@ -105,7 +105,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Name - advanced_data_type: null column_name: problem_id description: null @@ -118,7 +118,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Problem ID - advanced_data_type: null column_name: course_key description: null @@ -131,7 +131,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Key - advanced_data_type: null column_name: course_run description: null @@ -144,7 +144,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Run - advanced_data_type: null column_name: responses description: null @@ -157,7 +157,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Responses - advanced_data_type: null column_name: org description: null @@ -170,7 +170,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Org - advanced_data_type: null column_name: problem_link description: null @@ -182,7 +182,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Problem Link - advanced_data_type: null column_name: graded description: null @@ -194,7 +194,7 @@ columns: is_dttm: false python_date_format: null type: Bool - verbose_name: null + verbose_name: Graded - advanced_data_type: null column_name: interaction_type description: null @@ -206,7 +206,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Interaction Type database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/dim_at_risk_learners.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/dim_at_risk_learners.yaml index ddc055040..8d049feb3 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/dim_at_risk_learners.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/dim_at_risk_learners.yaml @@ -173,7 +173,7 @@ metrics: extra: null metric_name: count metric_type: null - verbose_name: null + verbose_name: Count warning_text: null normalize_columns: true offset: 0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_pageview_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_pageview_engagement.yaml index b685ee27c..d37c5fa62 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_pageview_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_pageview_engagement.yaml @@ -3,113 +3,149 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection page engagement + column_name: section_subsection_page_engagement description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section/Subsection Page Enggagement - advanced_data_type: null - column_name: subsection_with_name + column_name: section_subsection_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: Subsection Name + verbose_name: Section/Subsection Name - advanced_data_type: null - column_name: section_with_name + column_name: actor_id description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: Section Name + verbose_name: Actor ID - advanced_data_type: null - column_name: section/subsection name + column_name: course_key description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Key - advanced_data_type: null - column_name: content level + column_name: course_run description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Run - advanced_data_type: null - column_name: actor_id + column_name: subsection_with_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Subsection Name - advanced_data_type: null - column_name: course_key + column_name: section_with_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section Name - advanced_data_type: null - column_name: course_run + column_name: org description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Organization - advanced_data_type: null - column_name: org + column_name: content_level + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Content Level +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -122,10 +158,11 @@ metrics: d3format: null description: null expression: count(*) - extra: null + extra: + warning_markdown: '' metric_name: count metric_type: null - verbose_name: null + verbose_name: Count warning_text: null normalize_columns: true offset: 0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_problem_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_problem_engagement.yaml index c9f9e9840..b0b6099ae 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_problem_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_problem_engagement.yaml @@ -3,89 +3,125 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection problem engagement + column_name: section_subsection_problem_engagement description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section/Subsection Problem Engagement - advanced_data_type: null - column_name: section/subsection name + column_name: section_subsection_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section/Subsection Name - advanced_data_type: null - column_name: content level + column_name: actor_id description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Actor ID - advanced_data_type: null - column_name: actor_id + column_name: course_key description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Key - advanced_data_type: null - column_name: course_key + column_name: course_run description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Run - advanced_data_type: null - column_name: course_run + column_name: org description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Organization - advanced_data_type: null - column_name: org + column_name: content_level + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Content Level +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -98,10 +134,11 @@ metrics: d3format: null description: null expression: count(*) - extra: null + extra: + warning_markdown: '' metric_name: count metric_type: null - verbose_name: null + verbose_name: Count warning_text: null normalize_columns: true offset: 0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_engagement.yaml index 9759add2f..da9b10794 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_engagement.yaml @@ -3,113 +3,149 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection video engagement + column_name: section_subsection_video_engagement description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section/Subsection Video Engagement - advanced_data_type: null - column_name: subsection_with_name + column_name: section_subsection_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: Subsection Name + verbose_name: Section/Subsection Name - advanced_data_type: null - column_name: section_with_name + column_name: actor_id description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: Section Name + verbose_name: Actor ID - advanced_data_type: null - column_name: section/subsection name + column_name: course_key description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Key - advanced_data_type: null - column_name: content level + column_name: course_run description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Course Run - advanced_data_type: null - column_name: actor_id + column_name: subsection_with_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Subsection Name - advanced_data_type: null - column_name: course_key + column_name: section_with_name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Section Name - advanced_data_type: null - column_name: course_run + column_name: org description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Organization - advanced_data_type: null - column_name: org + column_name: content_level + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Content Level +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name description: null expression: null - extra: null + extra: {} filterable: true groupby: true is_active: true is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -122,10 +158,11 @@ metrics: d3format: null description: null expression: count(*) - extra: null + extra: + warning_markdown: '' metric_name: count metric_type: null - verbose_name: null + verbose_name: Count warning_text: null normalize_columns: true offset: 0 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_plays.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_plays.yaml index 9339f048d..57809c59e 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_plays.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_video_plays.yaml @@ -193,7 +193,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Video Link - advanced_data_type: null column_name: username description: null @@ -205,7 +205,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Username - advanced_data_type: null column_name: email description: null @@ -217,7 +217,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Email - advanced_data_type: null column_name: name description: null @@ -229,7 +229,7 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: null + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_watched_video_segments.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_watched_video_segments.yaml index cf9caed99..c4cff7257 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_watched_video_segments.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_at_risk_watched_video_segments.yaml @@ -121,7 +121,7 @@ columns: is_dttm: false python_date_format: null type: Int64 - verbose_name: null + verbose_name: Video Duration database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_instance_actors.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_instance_actors.yaml index 7886d7007..803fc9fde 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_instance_actors.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_instance_actors.yaml @@ -14,7 +14,7 @@ columns: is_dttm: null python_date_format: null type: AGGREGATEFUNCTION - verbose_name: null + verbose_name: Actors Count - advanced_data_type: null column_name: emission_hour description: null diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_pageview_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_pageview_engagement.yaml index fe8650d54..46b36e75c 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_pageview_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_pageview_engagement.yaml @@ -3,7 +3,7 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection page engagement + column_name: subsection_with_name description: null expression: '' extra: {} @@ -13,9 +13,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Page Engagement + verbose_name: Subsection With Name - advanced_data_type: null - column_name: section/subsection name + column_name: section_with_name description: null expression: '' extra: {} @@ -25,9 +25,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Name + verbose_name: Section With Name - advanced_data_type: null - column_name: content level + column_name: actor_id description: null expression: '' extra: {} @@ -37,9 +37,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Content Level + verbose_name: Actor Id - advanced_data_type: null - column_name: subsection_with_name + column_name: course_key description: null expression: '' extra: {} @@ -49,9 +49,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Subsection With Name + verbose_name: Course Key - advanced_data_type: null - column_name: section_with_name + column_name: content_level description: null expression: '' extra: {} @@ -61,9 +61,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section With Name + verbose_name: Content Level - advanced_data_type: null - column_name: actor_id + column_name: course_run description: null expression: '' extra: {} @@ -73,9 +73,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Actor Id + verbose_name: Course Run - advanced_data_type: null - column_name: course_key + column_name: org description: null expression: '' extra: {} @@ -85,9 +85,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Key + verbose_name: Org - advanced_data_type: null - column_name: course_run + column_name: section_subsection_page_engagement description: null expression: '' extra: {} @@ -97,9 +97,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Run + verbose_name: section_subsection_page_engagement - advanced_data_type: null - column_name: org + column_name: section_subsection_name description: null expression: '' extra: {} @@ -109,7 +109,43 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Org + verbose_name: section_subsection_name +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -122,8 +158,9 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection page engagement" = 'At least one page viewed' or "section/subsection page engagement" = 'All pages viewed') - extra: {} + countIf("section_subsection_page_engagement" = 'At least one page viewed' or "section_subsection_page_engagement" = 'All pages viewed') + extra: + warning_markdown: '' metric_name: at_leat_one_page_viewed metric_type: null verbose_name: At Leat One Page Viewed @@ -132,8 +169,9 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection page engagement" = 'All pages viewed') - extra: {} + countIf("section_subsection_page_engagement" = 'All pages viewed') + extra: + warning_markdown: '' metric_name: all_pages_viewed metric_type: null verbose_name: All Pages Viewed @@ -142,7 +180,8 @@ metrics: d3format: null description: null expression: count(*) - extra: {} + extra: + warning_markdown: '' metric_name: count metric_type: null verbose_name: Count @@ -151,8 +190,7 @@ normalize_columns: true offset: 0 params: null schema: '{{ DBT_PROFILE_TARGET_DATABASE }}' -sql: |- - {% filter indent(width=2) %}{% include 'openedx-assets/queries/fact_pageview_engagement.sql' %}{% endfilter %} +sql: select * from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_pageview_engagement table_name: fact_pageview_engagement template_params: {} uuid: 9febd6be-5102-4dbf-86b9-45ebd3cbbc45 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_problem_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_problem_engagement.yaml index 9d72d5fdf..5b33ca346 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_problem_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_problem_engagement.yaml @@ -3,7 +3,7 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection problem engagement + column_name: actor_id description: null expression: null extra: {} @@ -13,9 +13,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Problem Engagement + verbose_name: Actor Id - advanced_data_type: null - column_name: section/subsection name + column_name: course_key description: null expression: null extra: {} @@ -25,9 +25,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Name + verbose_name: Course Key - advanced_data_type: null - column_name: content level + column_name: content_level description: null expression: null extra: {} @@ -39,7 +39,7 @@ columns: type: String verbose_name: Content Level - advanced_data_type: null - column_name: actor_id + column_name: course_run description: null expression: null extra: {} @@ -49,9 +49,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Actor Id + verbose_name: Course Run - advanced_data_type: null - column_name: course_key + column_name: org description: null expression: null extra: {} @@ -61,9 +61,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Key + verbose_name: Org - advanced_data_type: null - column_name: course_run + column_name: section_subsection_problem_engagement description: null expression: null extra: {} @@ -73,9 +73,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Run + verbose_name: section_subsection_problem_engagement - advanced_data_type: null - column_name: org + column_name: section_subsection_name description: null expression: null extra: {} @@ -85,7 +85,43 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Org + verbose_name: section_subsection_name +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -98,7 +134,7 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection problem engagement" = 'At least one problem attempted' or "section/subsection problem engagement" = 'All problems attempted') + countIf("section_subsection_problem_engagement" = 'At least one problem attempted' or "section_subsection_problem_engagement" = 'All problems attempted') extra: warning_markdown: '' metric_name: attempted_at_least_one_problem @@ -109,8 +145,9 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection problem engagement" = 'All problems attempted') - extra: {} + countIf("section_subsection_problem_engagement" = 'All problems attempted') + extra: + warning_markdown: '' metric_name: attempted_all_problems metric_type: null verbose_name: Attempted All Problems @@ -129,8 +166,7 @@ normalize_columns: true offset: 0 params: null schema: '{{ DBT_PROFILE_TARGET_DATABASE }}' -sql: |- - {% filter indent(width=2) %}{% include 'openedx-assets/queries/fact_problem_engagement.sql' %}{% endfilter %} +sql: select * from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_problem_engagement table_name: fact_problem_engagement template_params: {} uuid: 171c88e5-fd4b-4aab-b287-361fa6fa5415 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_video_engagement.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_video_engagement.yaml index 7e1c0a7ad..55010d41e 100644 --- a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_video_engagement.yaml +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/fact_video_engagement.yaml @@ -3,7 +3,7 @@ always_filter_main_dttm: false cache_timeout: null columns: - advanced_data_type: null - column_name: section/subsection page engagement + column_name: actor_id description: null expression: null extra: {} @@ -13,9 +13,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Page Engagement + verbose_name: Actor Id - advanced_data_type: null - column_name: section/subsection name + column_name: course_key description: null expression: null extra: {} @@ -25,9 +25,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section/Subsection Name + verbose_name: Course Key - advanced_data_type: null - column_name: content level + column_name: content_level description: null expression: null extra: {} @@ -39,7 +39,7 @@ columns: type: String verbose_name: Content Level - advanced_data_type: null - column_name: actor_id + column_name: course_run description: null expression: null extra: {} @@ -49,9 +49,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Actor Id + verbose_name: Course Run - advanced_data_type: null - column_name: course_key + column_name: subsection_with_name description: null expression: null extra: {} @@ -61,9 +61,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Key + verbose_name: Subsection Name - advanced_data_type: null - column_name: course_run + column_name: section_with_name description: null expression: null extra: {} @@ -73,9 +73,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Course Run + verbose_name: Section Name - advanced_data_type: null - column_name: subsection_with_name + column_name: org description: null expression: null extra: {} @@ -85,9 +85,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Subsection Name + verbose_name: Org - advanced_data_type: null - column_name: section_with_name + column_name: section_subsection_name description: null expression: null extra: {} @@ -97,9 +97,9 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Section Name + verbose_name: section_subsection_name - advanced_data_type: null - column_name: org + column_name: section_subsection_video_engagement description: null expression: null extra: {} @@ -109,7 +109,43 @@ columns: is_dttm: false python_date_format: null type: String - verbose_name: Org + verbose_name: Section Subsection Video Engagement +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Email +- advanced_data_type: null + column_name: name + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: String + verbose_name: Name database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 default_endpoint: null description: null @@ -122,7 +158,7 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection video engagement" = 'At least one video viewed' or "section/subsection video engagement" = 'All videos viewed') + countIf("section_subsection_video_engagement" = 'At least one video viewed' or "section_subsection_video_engagement" = 'All videos viewed') extra: warning_markdown: '' metric_name: at_least_one_viewed @@ -133,8 +169,9 @@ metrics: d3format: null description: null expression: |- - countIf("section/subsection video engagement" = 'All videos viewed') - extra: {} + countIf("section_subsection_video_engagement" = 'All videos viewed') + extra: + warning_markdown: '' metric_name: all_videos_viewed metric_type: null verbose_name: All Videos Viewed @@ -153,8 +190,7 @@ normalize_columns: true offset: 0 params: null schema: '{{ DBT_PROFILE_TARGET_DATABASE }}' -sql: |- - {% filter indent(width=2) %}{% include 'openedx-assets/queries/fact_video_engagement.sql' %}{% endfilter %} +sql: select * from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_video_engagement table_name: fact_video_engagement template_params: {} uuid: 247a55b3-d44e-442e-ba92-71bf7976b192 diff --git a/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/learner_summary.yaml b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/learner_summary.yaml new file mode 100644 index 000000000..8f6b9e6ed --- /dev/null +++ b/tutoraspects/templates/aspects/build/aspects-superset/openedx-assets/assets/datasets/learner_summary.yaml @@ -0,0 +1,211 @@ +_file_name: learner_summary.yaml +always_filter_main_dttm: false +cache_timeout: null +columns: +- advanced_data_type: null + column_name: emission_time + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: true + python_date_format: null + type: DATETIME + verbose_name: Enrollment Date +- advanced_data_type: null + column_name: actor_id + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Actor Id +- advanced_data_type: null + column_name: course_key + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Course Key +- advanced_data_type: null + column_name: course_name + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Course Name +- advanced_data_type: null + column_name: course_run + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Course Run +- advanced_data_type: null + column_name: enrollment_status + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Enrollment Status +- advanced_data_type: null + column_name: enrollment_mode + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Enrollment Track +- advanced_data_type: null + column_name: grade_bucket + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Grade Range +- advanced_data_type: null + column_name: approving_state + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Passed/Failed +- advanced_data_type: null + column_name: org + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Organization +- advanced_data_type: null + column_name: course_grade + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: FLOAT64 + verbose_name: Course Grade +- advanced_data_type: null + column_name: last_visited + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: true + python_date_format: null + type: DATETIME + verbose_name: Last Visited +- advanced_data_type: null + column_name: username + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Username +- advanced_data_type: null + column_name: email + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Email +- advanced_data_type: null + column_name: name + description: null + expression: null + extra: {} + filterable: true + groupby: true + is_active: true + is_dttm: false + python_date_format: null + type: STRING + verbose_name: Name +database_uuid: 21174b6c-4d40-4958-8161-d6c3cf5e77b6 +default_endpoint: null +description: null +extra: null +fetch_values_predicate: null +filter_select_enabled: true +main_dttm_col: emission_time +metrics: +- currency: null + d3format: null + description: null + expression: COUNT(*) + extra: + warning_markdown: '' + metric_name: count + metric_type: count + verbose_name: COUNT(*) + warning_text: null +normalize_columns: false +offset: 0 +params: null +schema: '{{ DBT_PROFILE_TARGET_DATABASE }}' +sql: select * from {{DBT_PROFILE_TARGET_DATABASE}}.learner_summary +table_name: learner_summary +template_params: null +uuid: da75efef-09ba-4ed0-8b6b-bf11c5c26008 +version: 1.0.0 diff --git a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_pageview_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_pageview_engagement.sql index 63c2ecd1d..b8d310f24 100644 --- a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_pageview_engagement.sql +++ b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_pageview_engagement.sql @@ -1,8 +1,5 @@ -with engagement as ( - {% include 'openedx-assets/queries/fact_pageview_engagement.sql' %} -) - -select * -from engagement +select + fact_pageview_engagement.* +from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_pageview_engagement join {{ DBT_PROFILE_TARGET_DATABASE }}.dim_at_risk_learners using (org, course_key, actor_id) diff --git a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_problem_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_problem_engagement.sql index 447ab3d49..37b034358 100644 --- a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_problem_engagement.sql +++ b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_problem_engagement.sql @@ -1,8 +1,5 @@ -with engagement as ( - {% include 'openedx-assets/queries/fact_problem_engagement.sql' %} -) - -select * -from engagement +select + fact_problem_engagement.* +from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_problem_engagement join {{ DBT_PROFILE_TARGET_DATABASE }}.dim_at_risk_learners using (org, course_key, actor_id) diff --git a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_video_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_video_engagement.sql index 08fc851e5..ab76f8c65 100644 --- a/tutoraspects/templates/openedx-assets/queries/fact_at_risk_video_engagement.sql +++ b/tutoraspects/templates/openedx-assets/queries/fact_at_risk_video_engagement.sql @@ -1,8 +1,5 @@ -with engagement as ( - {% include 'openedx-assets/queries/fact_video_engagement.sql' %} -) - -select * -from engagement +select + fact_video_engagement.* +from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_video_engagement join {{ DBT_PROFILE_TARGET_DATABASE }}.dim_at_risk_learners using (org, course_key, actor_id) diff --git a/tutoraspects/templates/openedx-assets/queries/fact_pageview_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_pageview_engagement.sql deleted file mode 100644 index 8aace32c8..000000000 --- a/tutoraspects/templates/openedx-assets/queries/fact_pageview_engagement.sql +++ /dev/null @@ -1,85 +0,0 @@ -with - subsection_counts as ( - select - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - page_count, - count(distinct block_id) as pages_visited, - case - when pages_visited = 0 - then 'No pages viewed yet' - when pages_visited = page_count - then 'All pages viewed' - else 'At least one page viewed' - end as engagement_level - from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_navigation_completion - where - 1 = 1 - {% raw %} - {% if from_dttm %} and visited_on > date('{{ from_dttm }}') {% endif %} - {% if to_dttm %} and visited_on < date('{{ to_dttm }}') {% endif %} - {% endraw %} - {% include 'openedx-assets/queries/common_filters.sql' %} - group by - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - page_count - ), - section_counts as ( - select - org, - course_key, - course_run, - section_with_name, - '' as subsection_with_name, - actor_id, - sum(page_count) as page_count, - sum(pages_visited) as pages_visited, - case - when pages_visited = 0 - then 'No pages viewed yet' - when pages_visited = page_count - then 'All pages viewed' - else 'At least one page viewed' - end as engagement_level - from subsection_counts - group by - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id - ) - -select - org, - course_key, - course_run, - section_with_name as section_with_name, - subsection_with_name as subsection_with_name, - subsection_with_name as `section/subsection name`, - 'subsection' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection page engagement` -from subsection_counts -union all -select - org, - course_key, - course_run, - section_with_name as section_with_name, - subsection_with_name as subsection_with_name, - section_with_name as `section/subsection name`, - 'section' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection page engagement` -from section_counts diff --git a/tutoraspects/templates/openedx-assets/queries/fact_problem_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_problem_engagement.sql deleted file mode 100644 index 3c254fed1..000000000 --- a/tutoraspects/templates/openedx-assets/queries/fact_problem_engagement.sql +++ /dev/null @@ -1,78 +0,0 @@ -with - subsection_counts as ( - select - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - item_count, - count(distinct problem_id) as problems_attempted, - case - when problems_attempted = 0 - then 'No problems attempted yet' - when problems_attempted = item_count - then 'All problems attempted' - else 'At least one problem attempted' - end as engagement_level - from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_problem_engagement - where - 1 = 1 - {% raw %} - {% if from_dttm %} - and attempted_on > date('{{ from_dttm }}') - {% endif %} - {% if to_dttm %} - and attempted_on < date('{{ to_dttm }}') - {% endif %} - {% endraw %} - {% include 'openedx-assets/queries/common_filters.sql' %} - group by - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - item_count - ), - section_counts as ( - select - org, - course_key, - course_run, - section_with_name, - actor_id, - sum(item_count) as item_count, - sum(problems_attempted) as problems_attempted, - case - when problems_attempted = 0 - then 'No problems attempted yet' - when problems_attempted = item_count - then 'All problems attempted' - else 'At least one problem attempted' - end as engagement_level - from subsection_counts - group by org, course_key, course_run, section_with_name, actor_id - ) - -select - org, - course_key, - course_run, - subsection_with_name as `section/subsection name`, - 'subsection' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection problem engagement` -from subsection_counts -union all -select - org, - course_key, - course_run, - section_with_name as `section/subsection name`, - 'section' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection problem engagement` -from section_counts diff --git a/tutoraspects/templates/openedx-assets/queries/fact_video_engagement.sql b/tutoraspects/templates/openedx-assets/queries/fact_video_engagement.sql deleted file mode 100644 index 09581a3b2..000000000 --- a/tutoraspects/templates/openedx-assets/queries/fact_video_engagement.sql +++ /dev/null @@ -1,99 +0,0 @@ -with - subsection_counts as ( - select - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - item_count, - count(distinct video_id) as videos_viewed, - case - when videos_viewed = 0 - then 'No videos viewed yet' - when videos_viewed = item_count - then 'All videos viewed' - else 'At least one video viewed' - end as engagement_level - from {{ DBT_PROFILE_TARGET_DATABASE }}.fact_video_engagement - where - 1 = 1 - {% raw %} - {% if from_dttm %} and viewed_on > date('{{ from_dttm }}') {% endif %} - {% if to_dttm %} and viewed_on < date('{{ to_dttm }}') {% endif %} - {% endraw %} - {% include 'openedx-assets/queries/common_filters.sql' %} - group by - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id, - item_count - ), - section_counts as ( - select - org, - course_key, - course_run, - section_with_name, - '' as subsection_with_name, - actor_id, - sum(item_count) as item_count, - sum(videos_viewed) as videos_viewed, - case - when videos_viewed = 0 - then 'No videos viewed yet' - when videos_viewed = item_count - then 'All videos viewed' - else 'At least one video viewed' - end as engagement_level - from subsection_counts - group by - org, - course_key, - course_run, - section_with_name, - subsection_with_name, - actor_id - ), - all_counts as ( - - select - org, - course_key, - course_run, - section_with_name as section_with_name, - subsection_with_name as subsection_with_name, - subsection_with_name as `section/subsection name`, - 'subsection' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection video engagement` - from subsection_counts - union all - select - org, - course_key, - course_run, - section_with_name as section_with_name, - subsection_with_name as subsection_with_name, - section_with_name as `section/subsection name`, - 'section' as `content level`, - actor_id as actor_id, - engagement_level as `section/subsection video engagement` - from section_counts - ) -select * -from all_counts -where - 1 = 1 - {% raw %} - {% if filter_values("Section Name") != [] %} - and section_with_name in {{ filter_values("Section Name") | where_in }} - {% endif %} - {% if filter_values("Subsection Name") != [] %} - and subsection_with_name in {{ filter_values("Subsection Name") | where_in }} - {% endif %} - {% endraw %}