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

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

R-এ ডেটা ভিজ্যুয়ালাইজেশন ggplot2 দ্বারা প্রাধান্য পায়, এটি "গ্রাফিক্সের ব্যাকরণ" এর উপর ভিত্তি করে একটি প্যাকেজ। এই তত্ত্বটি গ্রাফগুলিকে স্বাধীন শব্দার্থিক উপাদানগুলিতে বিভক্ত করে, যেমন ডেটা, নান্দনিক ম্যাপিং এবং জ্যামিতিক উপাদান।


ggplot2 এর গঠন

ggplot2 দিয়ে তৈরি প্রতিটি প্লট ggplot() ফাংশনে একটি কল দিয়ে শুরু হয়, যেখানে আমরা একটি ডেটা ফ্রেম সরবরাহ করি এবং aes() (নন্দনতত্ত্ব) ফাংশন ব্যবহার করে কলামগুলি কীভাবে ভিজ্যুয়াল বৈশিষ্ট্যগুলিতে ম্যাপ করে তা সংজ্ঞায়িত করি।

এরপরে, আমরা + অপারেটর ব্যবহার করে জ্যামিতিক স্তর যোগ করি (দ্রষ্টব্য: আমরা ggplot2 এ + ব্যবহার করি এবং %>% ব্যবহার করি না)।

মৌলিক টেমপ্লেট হল:

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

নান্দনিক ম্যাপিং (aes) এবং জ্যামিতি (geom_*)

aes() ফাংশন আপনার ডেটার কোন ভেরিয়েবলগুলি প্লটের ভিজ্যুয়াল অ্যাট্রিবিউটগুলিকে নিয়ন্ত্রণ করে তা নির্ধারণ করে:

  • x: অনুভূমিক অক্ষের অবস্থান।
  • y: উল্লম্ব অক্ষের অবস্থান।
  • color: বিন্দু বা লাইনের রঙ।
  • fill: বন্ধ আকৃতির রঙ পূরণ করুন (যেমন বার)।
  • size: উপাদানের আকার।

জ্যামিতি (geom_) চাক্ষুষ উপস্থাপনার ধরন সংজ্ঞায়িত করে:

1. স্ক্যাটার প্লট (geom_point())

দুটি সংখ্যাসূচক ভেরিয়েবলের মধ্যে সম্পর্ক প্রদর্শনের জন্য আদর্শ।

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

2. লাইন প্লট (geom_line())

সাধারণত টাইম সিরিজ বা ট্রেন্ড লাইনের জন্য ব্যবহৃত হয়।

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

3. বার প্লট (geom_bar() এবং geom_col())

ডিফল্টরূপে, geom_bar() বিভাগগুলির ফ্রিকোয়েন্সি গণনা করে, যখন geom_col() সরাসরি একটি y কলামে সংরক্ষিত প্রকৃত মানগুলিকে উপস্থাপন করে৷

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

নিজে চেষ্টা করে দেখুন

ব্যায়াম 1: একটি মৌলিক স্ক্যাটার প্লট তৈরি করুন

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

df ডেটা ফ্রেম ব্যবহার করে একটি স্ক্যাটার প্লট তৈরি করুন। x-অক্ষে উচ্চতা কলাম এবং y-অক্ষে ওজন কলাম ম্যাপ করুন। geom_point() ব্যবহার করুন।

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

ggplot (df, aes(x = উচ্চতা, y = ওজন)) + geom_point()

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

অনুশীলনী 2: ডেটার উপর ভিত্তি করে রঙ যোগ করুন

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

লিঙ্গ অনুসারে পয়েন্টগুলিকে রঙ করতে aes() এর ভিতরে লিঙ্গ কলামে রঙের বৈশিষ্ট্য ম্যাপ করে পূর্ববর্তী প্লটটি পরিবর্তন করুন।

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

অন্তর্ভুক্ত রঙ = লিঙ্গ all'interno di aes(), বিজ্ঞাপনের উদাহরণ: aes(x = উচ্চতা, y = ওজন, রঙ = লিঙ্গ)।

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

ব্যায়াম 3: লাইন প্লট

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

df ব্যবহার করে একটি লাইন প্লট তৈরি করুন। x-অক্ষে বছরের কলাম এবং y-অক্ষে বিক্রয় কলাম ম্যাপ করুন। geom_line() জ্যামিতিক স্তর যোগ করুন।

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

Usa ggplot(df, aes(x = বছর, y = বিক্রয়)) + geom_line()

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

ব্যায়াম 4: geom_col সহ বার প্লট

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

মান সরাসরি প্রদর্শন করতে একটি বার প্লট তৈরি করুন। x-অক্ষে বিভাগ কলাম এবং y-অক্ষে মান কলাম ম্যাপ করুন। geom_col() জ্যামিতি ব্যবহার করুন।

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

Usa ggplot(df, aes(x = বিভাগ, y = মান)) + geom_col()

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

ব্যায়াম 5: একাধিক জ্যামিতি একত্রিত করুন

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

ggplot2 এ আপনি একাধিক জ্যামিতিক স্তর স্ট্যাক করতে পারেন। একটি প্লট তৈরি করুন যা geom_point() এবং geom_smooth() উভয়কে একত্রিত করে, x_val কে x-অক্ষে এবং y_val কে y-অক্ষে ম্যাপ করে।

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

geom_point() che geom_smooth() আলাদা করা ডাল সেগনো '+'.

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