মূল কন্টেন্টে যান
eLearner.app
মডিউল 5 · 1-এর পাঠ 2কোর্সে 9/10~12 min
মডিউল পাঠ (1/2)

ব্যাকরণ এবং মৌলিক জ্যামিতি

Data visualization in R is dominated by ggplot2, a package based on the "Grammar of Graphics". This theory breaks down graphs into independent semantic components, such as data, aesthetic mappings, and geometric elements.


The Structure of ggplot2

Every plot created with ggplot2 starts with a call to the ggplot() function, where we supply a data frame and define how columns map to visual properties using the aes() (aesthetics) function.

Next, we add geometric layers using the + operator (note: we use + and not %>% in ggplot2).

The basic template is:

Code
ggplot(data = <DATA_FRAME>, mapping = aes(<AESTHETICS>)) +
  <GEOMETRY>()

Aesthetic Mappings (aes) and Geometries (geom_*)

The aes() function defines which variables in your data control the plot's visual attributes:

  • x: Position on the horizontal axis.
  • y: Position on the vertical axis.
  • color: Color of points or lines.
  • fill: Fill color of closed shapes (e.g. bars).
  • size: Size of elements.

Geometries (geom_) define the type of visual representation:

1. Scatter Plot (geom_point())

Ideal for displaying the relationship between two numeric variables.

Code
ggplot(df, aes(x = age, y = income)) +
  geom_point()

2. Line Plot (geom_line())

Commonly used for time series or trend lines.

Code
ggplot(df, aes(x = year, y = sales)) +
  geom_line()

3. Bar Plot (geom_bar() and geom_col())

By default, geom_bar() counts the frequency of categories, while geom_col() represents the actual values stored in a y column directly.

Code
# Plots the value of the 'sales' column for each 'category'
ggplot(df, aes(x = category, y = sales)) +
  geom_col()

Try it yourself

Exercise 1: Create a basic scatter plot

ব্যায়াম#r.m5.l1.e1
প্রচেষ্টা: 0লোড হচ্ছে...

Create a scatter plot using the df data frame. Map the height column to the x-axis and the weight column to the y-axis. Use geom_point().

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Assicurati di usare ggplot(df, aes(x = height, y = weight)) + geom_point()

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

Exercise 2: Add color based on data

ব্যায়াম#r.m5.l1.e2
প্রচেষ্টা: 0লোড হচ্ছে...

Modify the previous plot by mapping the color property to the gender column inside aes() to color the points by gender.

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Includi color = gender all'interno di aes(), ad esempio: aes(x = height, y = weight, color = gender).

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

Exercise 3: Line plot

ব্যায়াম#r.m5.l1.e3
প্রচেষ্টা: 0লোড হচ্ছে...

Create a line plot using df. Map the year column to the x-axis and the sales column to the y-axis. Add the geom_line() geometric layer.

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Usa ggplot(df, aes(x = year, y = sales)) + geom_line()

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

Exercise 4: Bar plot with geom_col

ব্যায়াম#r.m5.l1.e4
প্রচেষ্টা: 0লোড হচ্ছে...

Create a bar plot to display values directly. Map the category column to the x-axis and the value column to the y-axis. Use the geom_col() geometry.

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Usa ggplot(df, aes(x = category, y = value)) + geom_col()

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

Exercise 5: Combine multiple geometries

ব্যায়াম#r.m5.l1.e5
প্রচেষ্টা: 0লোড হচ্ছে...

In ggplot2 you can stack multiple geometric layers. Create a plot that combines both geom_point() and geom_smooth(), mapping x_val to the x-axis and y_val to the y-axis.

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

Aggiungi sia geom_point() che geom_smooth() separati dal segno '+'.

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ