Heart disease is a top cause of death — often with no clear warning signs
Common risk factors (like cholesterol and age) don’t tell the full story
Data from 1,000+ real patients is explored. (Dataset Source: https://www.kaggle.com/datasets/ketangangal/heart-disease-dataset-uci)
Focus is on how age, symptoms, vitals, and exercise results combine to predict risk
Goal: Help detect heart disease earlier and more accurately
This bar chart shows the proportion of heart disease cases among males and females. We observe that a higher percentage of men are diagnosed with heart disease compared to women. While there are fewer female patients overall, the relative risk appears greater in males. This could be influenced by biological differences, lifestyle factors, or even differences in how symptoms are reported or diagnosed.
This alluvial flow diagram shows how different types of chest pain relate to heart disease. Many patients who had no chest pain (asymptomatic) were actually diagnosed with heart disease. People with atypical or non-anginal pain also had a higher chance of having the disease. On the other hand, those with typical chest pain were more likely to not have heart disease. This suggests that even unusual or no pain at all can be a sign of serious heart issues.
This density plot compares the distribution of maximum heart rate achieved between patients with and without heart disease. Patients without heart disease generally reach higher maximum heart rates, peaking around 165–175 bpm. In contrast, patients with heart disease tend to cluster around lower heart rates, mostly below 160 bpm.This suggests that lower cardiovascular performance during exercise could be a meaningful indicator of heart-related issues.
This heatmap shows how different heart health factors are related to each other. We can see that when a person’s maximum heart rate is lower, other risk factors like age and blood pressure tend to be higher. Age, resting blood pressure, and oldpeak are moderately linked, meaning they often increase together. On the other hand, cholesterol doesn’t show a strong connection with the other variables, suggesting it behaves more independently in this dataset.
This 3D scatter plot shows how age, maximum heart rate, and cholesterol levels relate to heart disease. Each point represents a patient, with color indicating whether they have heart disease or not. Patients without heart disease tend to have higher maximum heart rates even at older ages, and their cholesterol levels are more tightly clustered. On the other hand, patients with heart disease are more spread out in terms of cholesterol, and many of them have lower heart rates, especially in older age groups. This pattern suggests that lower exercise capacity (max heart rate) combined with elevated cholesterol and increasing age may be warning signs of heart disease. It also highlights how multiple risk factors interact, rather than acting in isolation.
Patients with lower maximum heart rates, especially older individuals, are more likely to have heart disease
Asymptomatic and atypical chest pain are strongly linked to disease, showing that subtle or no pain can still be serious
Age, resting blood pressure, and oldpeak often increase together in at-risk patients, indicating combined risk
Cholesterol shows a weak relationship with other variables, suggesting it may act independently
Visual patterns from 3D plots help reveal hidden interactions between risk factors
These insights support more accurate and earlier screening, even in patients without classic symptoms
Brunson, C. (2025). Alluvial Plots in ggplot2. https://corybrunson.github.io/ggalluvial/
GeeksforGeeks. (2020). Visualize correlation matrix using correlogram in R Programming. https://www.geeksforgeeks.org/visualize-correlation-matrix-using-correlogram-in-r-programming/
Hartman, D. (2021). Heart Disease UCI. Kaggle. https://www.kaggle.com/datasets/hartman/heart-disease-uci
Plotly. (n.d.). 3D Scatter Plots in R. https://plotly.com/r/3d-scatter-plots/
Statology. (2023). How to Use corrplot in R to Create a Correlation Matrix. https://www.statology.org/corrplot-r/
Xie, Y. (2025). R Markdown: The Definitive Guide. https://bookdown.org/yihui/rmarkdown/revealjs.html