اخبار و آموزش های R توسط صدها وبلاگ نویس R کمک کرده است
راهنمای دقیق نمودار نوار در R با ggplot
ارسال شده در 1 مه 2019 توسط مایکل توت در R Bloggers |0 نظر
[این مقاله برای اولین بار در برنامه نویسی Lea R منتشر شد و ایجاد یک حرفه علوم داده |مایکل توت ، و با مهربانی به R-Bloggers کمک کرد].(می توانید در مورد محتوای این صفحه در اینجا شماره را گزارش دهید) آیا می خواهید محتوای خود را در R-Bloggers به اشتراک بگذارید؟اگر وبلاگ دارید ، اینجا را کلیک کنید ، یا اگر این کار را نمی کنید اینجا.
وقتی صحبت از تجسم داده ها می شود ، نمودارهای چشمک زن می توانند سرگرم کننده باشند. باور کنید ، من به اندازه هر کسی طرفدار نمودارهای چشمگیر هستم. اما اگر می خواهید اطلاعات را به خصوص به مخاطبان گسترده منتقل کنید ، چشمک زن همیشه راهی برای پیشبرد نیست.
این که آیا این نمودار خط ، طرح پراکندگی یا نمودار نوار (موضوع این راهنما!) است ، انتخاب یک سبک درک خوب و مشترک معمولاً راهی برای بیشتر مخاطبان است ، بیشتر اوقات. و اگر به تازگی با سفر R خود شروع کرده اید ، مهم است که قبل از پیچیده تر کردن چیزها ، اصول اولیه را تسلط دهید.
بنابراین در این راهنما ، من قصد دارم در مورد ایجاد نمودار نوار در R. صحبت کنم ، به طور خاص ، من دقیقاً به شما نشان خواهم داد که چگونه می توانید از عملکرد GGPLOT GEOM_BAR برای ایجاد نمودار نوار استفاده کنید.
نمودار نوار نمودار است که برای نشان دادن مقایسه در دسته های گسسته استفاده می شود. یک محور-محور x در طول این راهنما-دسته بندی ها را نشان می دهد ، و محور دیگر-محور y در مورد ما-یک مقدار اندازه گیری شده را نشان می دهد. ارتفاع میله ها متناسب با مقادیر اندازه گیری شده است.

به عنوان مثال ، در این نمودار نوار بسیار علمی ، ما سطح خطر تهدید کننده زندگی را برای سه اقدام مختلف می بینیم. مطمئناً همه خطرناک است ، اما من فکر می کنم همه ما می توانیم موافقت کنیم که این نمودار به درستی نشان می دهد که اسپویلرهای Game of Thrones از همه خطرناک ترین هستند.
مقدمه ای برای ggplot
قبل از غواصی به کد GGPLOT برای ایجاد نمودار نوار در R ، ابتدا می خواهم GGPLOT را به طور خلاصه توضیح دهم و چرا فکر می کنم این بهترین انتخاب برای نمودار در R.
GGPLOT بسته ای برای ایجاد نمودارها در R است ، اما همچنین روشی برای تفکر و تجزیه نمودارهای پیچیده به زیر واحد های منطقی است.
GGPLOT هر یک از مؤلفه های نمودار ، مقیاس ، رنگ ، اشیاء و غیره را به خود اختصاص می دهد و به شما امکان می دهد تا در هر زمان نمودارها را به طور متوالی بسازید. سپس می توانید هر یک از این مؤلفه ها را به شکلی انعطاف پذیر و کاربر پسند اصلاح کنید. هنگامی که مؤلفه ها نا مشخص هستند ، GGPLOT از پیش فرض های معقول استفاده می کند. این باعث می شود GGPLOT به ابزاری قدرتمند و انعطاف پذیر برای ایجاد انواع نمودارها در R. تبدیل شود. این ابزاری است که من برای ایجاد تقریباً هر نمودار این روزها استفاده می کنم ، و فکر می کنم شما باید از آن نیز استفاده کنید!
همراه با کتاب کار
برای همراهی با این راهنما ، من یک کتاب کار رایگان ایجاد کرده ام که می توانید از طریق آن کار کنید تا آنچه را که می خوانید استفاده کنید.
کتاب کار یک پرونده R است که شامل تمام کدهای نشان داده شده در این پست و همچنین سؤالات و تمرینات هدایت شده اضافی برای کمک به شما در درک موضوع حتی عمیق تر است.
اگر می خواهید واقعاً یاد بگیرید که چگونه یک نمودار نوار را در R ایجاد کنید تا هنوز هفته ها یا حتی ماه ها را به یاد بیاورید ، باید تمرین کنید.
بنابراین اکنون کتاب کار را بارگیری کنید و همانطور که این پست را می خوانید تمرین کنید!
بررسی مجموعه داده ما
در طول این راهنما ، ما از مجموعه داده MPG که در GGPLOT ساخته شده است استفاده خواهیم کرد. این مجموعه داده حاوی داده های مربوط به مصرف سوخت برای 38 مدل اتومبیل محبوب است. بیا یک نگاهی بیندازیم:

مجموعه داده MPG شامل 11 ستون است:
- سازنده: نام سازنده خودرو
- مدل: نام مدل ماشین
- نمایشگر: جابجایی موتور (لیتر)
- سال: سال تولید
- سیلندر: تعداد سیلندرها
- ترانس: نوع انتقال
- DRV: F = درایو چرخ جلو ، R = درایو چرخ عقب ، 4 = 4WD
- CTY: مایل در هر گالن شهر
- HWY: مایل بزرگراه در هر گالن
- FL: نوع سوخت
- کلاس: نوع ماشین
نحوه ایجاد یک نمودار نوار ساده در R با استفاده از GEOM_BAR
GGPLOT از GEOMS یا اشیاء هندسی استفاده می کند تا اساس انواع مختلف نمودارها را تشکیل دهد. قبلاً در مورد GEOM_LINE برای نمودارهای خط و Geom_Point برای توطئه های پراکندگی صحبت کرده ام. امروز من روی GEOM_BAR تمرکز خواهم کرد ، که برای ایجاد نمودارهای نوار در R. استفاده می شود

در اینجا ما با ساده ترین نمودار نوار GGPLOT که می توانیم با استفاده از GEOM_BAR ایجاد کنیم ، شروع می کنیم. بیایید این را با جزئیات بیشتری مرور کنیم:
اول ، ما GGPLOT را صدا می کنیم ، که یک نمودار GGPlot جدید ایجاد می کند. در اصل ، این یک بوم خالی ایجاد می کند که روی آن داده ها و گرافیک های خود را اضافه خواهیم کرد. در اینجا ما MPG را به GGPlot منتقل می کنیم تا نشان دهیم که ما از داده های MPG برای این نمودار نوار GGPLOT خاص استفاده خواهیم کرد.
در مرحله بعد ، برای ایجاد این نمودار نوار ، تماس GEOM_BAR را به نمودار GGPLOT پایه اضافه می کنیم. در GGPLOT ، از نماد + برای اضافه کردن لایه های جدید به یک نمودار موجود استفاده می کنید. در این لایه دوم ، من به GGPlot گفتم که از کلاس به عنوان متغیر محور x برای نمودار نوار استفاده کند.
توجه داشته باشید که ما در اینجا متغیر محور y را مشخص نمی کنیم. بعداً ، من به شما می گویم که چگونه می توانیم محور y را برای نمودار نوار در R. تغییر دهیم اما در حال حاضر ، فقط بدانید که اگر چیزی را مشخص نکنید ، GGPLOT به طور خودکار وقایع هر دسته محور x را حساب می کنددر مجموعه داده ها ، و تعداد محور y را نشان می دهد.
و این همان است ، ما نمودار نوار خود را داریم! ما می بینیم که SUV ها در داده های ما شایع ترین هستند و به دنبال آن اتومبیل های جمع و جور و متوسط هستند.
تغییر رنگ نوار در نمودار نوار ggplot
با گسترش این مثال ، اجازه دهید رنگ های نمودار نوار ما را تغییر دهیم!

توجه داشته باشید که این تماس GEOM_BAR با یکی از آنها یکسان است ، به جز این که ما اصلاح کننده Fill = 'Blue' را به پایان خط اضافه کرده ایم. کمی با رنگ های مختلف آزمایش کنید تا ببینید که چگونه این کار در دستگاه شما کار می کند. شما می توانید از بیشتر نام های رنگی که می توانید به آنها فکر کنید استفاده کنید ، یا می توانید از کدهای رنگهای خاص هگز استفاده کنید تا دانه بیشتری کسب کنید.
اگر با نمودارهای خط و توطئه های پراکندگی در GGPLOT آشنا هستید ، دیده اید که در این موارد با مشخص کردن رنگ = "آبی" رنگ را تغییر داده ایم ، در حالی که در این حالت ما از Fill = "Blue" استفاده می کنیم.
در GGPLOT ، از رنگ برای تغییر طرح کلی یک شی استفاده می شود ، در حالی که از پر برای پر کردن داخل یک شی استفاده می شود. برای اشیاء مانند نقاط و خطوط ، در داخل آن وجود ندارد ، بنابراین ما از رنگ برای تغییر رنگ آن اشیاء استفاده می کنیم. با نمودارهای نوار ، میله ها را می توان پر کرد ، بنابراین ما برای تغییر رنگ با GEOM_BAR استفاده می کنیم.
این تمایز بین رنگ و پر کردن کمی پیچیده تر می شود ، بنابراین با من بچسبید تا در مورد چگونگی کار با نمودارهای نوار در GGPLOT بیشتر بشنوید!
رنگ نوار نقشه برداری به یک متغیر در نمودار نوار ggplot
اکنون ، بیایید چیزی کمی متفاوت را امتحان کنیم. کد GGPLOT را در زیر با کدی که در بالا اجرا کردیم مقایسه کنید. 2 تفاوت وجود دارد. ببینید آیا می توانید آنها را پیدا کنید و حدس بزنید که چه اتفاقی خواهد افتاد ، سپس به پایین بروید تا به نتیجه نگاهی بیندازید. اگر راهنماهای قبلی GGPLOT من را خوانده اید ، این بیت باید آشنا به نظر برسد!

این نمودار همان داده های قبلی را نشان می دهد ، اما اکنون به جای نشان دادن میله های رنگی جامد ، اکنون می بینیم که میله ها با 3 رنگ مختلف جمع شده اند! قسمت قرمز مربوط به خودروهای 4 چرخ محرک ، اتومبیل های سبز به جلو چرخ و اتومبیل های آبی به عقب است. آیا 2 تغییر را که برای تغییر نمودار استفاده کردیم ، گرفتید؟آنها بودند:
- به جای مشخص کردن Fill = 'Blue' ، ما Fill = DRV را مشخص کردیم
- ما پارامتر پر شده را در داخل پرانتز AES () جابجا کردیم
پیش از این ، ما به GGPlot گفتیم که با اضافه کردن Fill = "Blue" به تماس GEOM_BAR () ، رنگ میله ها را به رنگ آبی تغییر دهد.
کاری که ما در اینجا انجام می دهیم کمی پیچیده تر است. به جای مشخص کردن یک رنگ واحد برای میله های خود ، ما به GGPlot می گوییم که داده ها را در ستون DRV به زیبایی شناسی پر کند.
این بدان معنی است که ما به GGPlot می گوییم که برای هر مقدار DRV در داده های ما از رنگ دیگری استفاده کند! این نقشه برداری همچنین به GGPlot می داند که برای شناسایی انواع درایو نیز باید یک افسانه ایجاد کند و آن را به طور خودکار در آنجا قرار می دهد!
جزئیات بیشتر در مورد نمودارهای نوار انباشته در GGPLOT
همانطور که در بالا دیدیم ، وقتی متغیر را برای زیبایی زیبایی در GGPlot ترسیم می کنیم ، آنچه را که نمودار نوار انباشته نامیده می شود ، ایجاد می کند. نمودار نوار انباشته تنوع در نمودار نوار معمولی است که در آن یک نوار بین تعدادی از بخش های مختلف تقسیم می شود.
در این حالت ، ما نمودار نوار را بر اساس سطح متغیر DRV ، مربوط به اتومبیل های جلو ، چرخ عقب و چهار چرخ محرک تقسیم می کنیم.
برای یک کلاس خاص از ماشین ، نمودار نوار انباشته ما به راحتی می توان دید که چه تعداد از این اتومبیل ها در هر یک از 3 دسته DRV قرار می گیرند.
نقص اصلی نمودارهای نوار انباشته این است که خواندن بخش های بیشتری که هر نوار دارد ، سخت تر می شوند ، به خصوص هنگام تلاش برای مقایسه در محور x (در مورد ما ، در کلاس اتومبیل). برای نشان دادن ، بیایید نگاهی به این مثال بعدی بیندازیم:

همانطور که مشاهده می کنید ، حتی با چهار بخش ، مقایسه بین دسته های مختلف در محور x دشوار می شود. به عنوان مثال ، آیا مینی بوس 6 سیلندر یا وانت 6 سیلندر در مجموعه داده های ما وجود دارد؟چه چیزی در مورد جمع آوری 5 سیلندر در مقابل زیرمجموعه های 5 سیلندر؟با میله های انباشته ، این نوع مقایسه ها چالش برانگیز می شوند. توصیه من این است که به طور کلی از نمودارهای نوار انباشته با بیش از 3 بخش خودداری کنید.
میله های گول خورده در ggplot
به جای میله های انباشته ، می توانیم از نمودارهای نوار جانبی (dodged) استفاده کنیم. در GGPLOT ، این با استفاده از آرگومان موقعیت = position_dodge () به شرح زیر انجام می شود:

اکنون ، بخش های مختلف برای هر کلاس به جای جمع شدن در بالای یکدیگر ، در کنار هم قرار می گیرند.
با تجدید نظر در مقایسه از قبل ، می توانیم به سرعت ببینیم که تعداد مساوی مینی بوس 6 سیلندر و وانت 6 سیلندر وجود دارد. همچنین تعداد مساوی از جمع و جور 5 سیلندر و زیرمجموعه ها وجود دارد.
در حالی که این مقایسه ها با یک نمودار نوار dodged آسان تر است ، مقایسه تعداد کل اتومبیل ها در هر کلاس بسیار دشوارتر است.
که ما را به یک نکته کلی می رساند: نمودارهای مختلف اهداف مختلفی را ارائه می دهند! شما نباید سعی کنید در یک نمودار واحد بیش از حد انجام دهید. اگر می خواهید اطلاعات زیادی را در یک نمودار واحد قرار دهید ، احتمالاً مخاطبان خود را اشتباه می گیرید ، و آنها دقیقاً هیچ یک از اطلاعات را از بین نمی برند.
اندازه نوار مقیاس به یک متغیر در داده های شما
تاکنون ، تمام نمودارهای نوار که ما بررسی کرده ایم ، بر اساس تعداد متغیر در مجموعه داده ، ارتفاع میله ها را کاهش داده است. ابتدا تعداد وسایل نقلیه را در هر کلاس شمارش کردیم و سپس تعداد وسایل نقلیه در هر کلاس را با هر نوع DRV شمارش کردیم.
چه می شود اگر ما نمی خواهیم ارتفاع میله های ما براساس تعداد باشد؟چه می شود اگر ما قبلاً ستونی را در مجموعه داده های خود داشته باشیم که می خواهیم به عنوان ارتفاع محور y استفاده شود؟بیایید بگوییم که می خواستیم به عنوان مثال میانگین مایلی بزرگراه در هر گالن را بر اساس کلاس ماشین نمودار کنیم. چگونه می توانیم این کار را در ggplot انجام دهیم؟دو روش وجود دارد که می توانیم این کار را انجام دهیم ، و من هر دو را مرور خواهم کرد. برای شروع ، من stat = 'هویت' را معرفی می کنم:

اکنون ما یک نمودار بر اساس کلاس ماشین را مشاهده می کنیم که محور y به طور متوسط مایل بزرگراه در هر گالن هر کلاس را نشان می دهد. این کار چگونه است و چگونه با آنچه قبلاً داشتیم متفاوت است؟
پیش از این ، ما یک متغیر محور y را مشخص نکردیم و در عوض اجازه می دهیم GGPlot به طور خودکار محور y را با تعداد داده های خود جمع کند. اکنون ، ما صریحاً به GGPlot می گوییم که از HWY_MPG به عنوان متغیر محور y ما استفاده کند. و در اینجا چیز دیگری نیز وجود دارد: stat = 'هویت'. معنی آن چیست؟
ما قبلاً دیدیم که اگر Y- متغیر را از بین ببریم ، GGPLOT به طور خودکار ارتفاعات میله ها را به تعداد موارد موجود در هر گروه در محور x می رساند. اگر در عوض بخواهیم مقادیر از یک ستون در قاب داده خود حاصل شود ، باید در تماس GEOM_BAR دو چیز را تغییر دهیم:
- اضافه کردن stat = 'هویت' به geom_bar ()
- یک نقشه برداری متغیر y اضافه کنید
اضافه کردن یک نقشه برداری متغیر Y به تنهایی بدون اضافه کردن STAT = "هویت" منجر به یک پیام خطا می شود:

چرا خطا؟اگر STAT = 'هویت' را مشخص نکنید ، در زیر کاپوت ، GGPlot به طور خودکار مقدار پیش فرض STAT = 'COUNT' را منتقل می کند ، که شمارش را به صورت گروهی نمودار می کند. متغیر Y با این سازگار نیست ، بنابراین پیام خطا را دریافت می کنید.
اگر این گیج کننده باشد ، اشکالی ندارد. در حال حاضر ، تمام آنچه شما باید به خاطر بسپارید این است که اگر می خواهید از GEOM_BAR برای نقشه برداری از ارتفاعات یک ستون در مجموعه داده خود استفاده کنید ، باید یک نقشه برداری متغیر Y و stat = "هویت" را اضافه کنید.
من صادقانه خواهم بود ، این برای مدت طولانی برای من بسیار گیج کننده بود. من امیدوارم که این راهنمایی به پاک کردن مسائل برای شما کمک کند ، بنابراین لازم نیست همان سردرگمی را که من انجام دادم متحمل شوید. اما اگر به یاد داشته باشید که این تمایز را به سختی به یاد می آورید ، Ggplot نیز یک عملکرد مفید دارد که این کار را برای شما انجام می دهد. به جای استفاده از GEOM_BAR با STAT = 'Identity' ، می توانید به سادگی از عملکرد GEOM_COL استفاده کنید تا نتیجه یکسان را بدست آورید. اجازه بدید ببینم:

متوجه خواهید شد که نتیجه همان نمودار ما در بالا است ، اما ما GEOM_BAR را با GEOM_COL جایگزین کرده ایم و STAT = 'هویت' را حذف کرده ایم. GEOM_COL همان GEOM_BAR با STAT = 'Identity' است ، بنابراین می توانید از هر کدام که ترجیح می دهید استفاده کنید یا درک آن را آسان تر کنید. برای من ، من به Geom_Bar عادت کرده ام ، بنابراین ترجیح می دهم از آن استفاده کنم ، اما شما می توانید هر کدام را که دوست دارید انجام دهید!
تجدید نظر در رنگ در geom_bar
در بالا ، ما نشان دادیم که چگونه می توانید با استفاده از گزینه Fill ، رنگ میله ها را در GGPLOT تغییر دهید. من ذکر کردم که از رنگ برای نمودارهای خط و توطئه های پراکندگی استفاده می شود ، اما ما از آن استفاده می کنیم که میله ها را پر می کنیم زیرا داخل نوار را با رنگ پر می کنیم. گفته می شود ، رنگ هنوز در اینجا کار می کند ، هرچند که فقط بر طرح کلی نمودار مورد نظر تأثیر می گذارد. نگاهی بیاندازید:

این نمودارها با میله های پر از خاکستری استاندارد ، اما به رنگ آبی مشخص شده است. این طرح کلی همان چیزی است که رنگ برای نمودارهای نوار در GGPLOT تأثیر می گذارد!
من شخصاً فقط از رنگ برای یک چیز خاص استفاده می کنم: اصلاح طرح کلی یک نمودار نوار که در آن من از آن استفاده می کنم برای ایجاد نمودار بهتر با کمی پاپ اضافی. پر کردن استاندارد برای اکثر اهداف خوب است ، اما می توانید با یک طرح رنگی با دقت انتخاب شده ، کمی پیشرفت کنید:

ظریف است ، اما این نمودار برای پر کردن میله ها و آبی سبک تر برای طرح کلی که باعث می شود میله ها کمی پاپ شود ، از یک آبی دریایی تیره تر استفاده می کند.
این تنها زمانی است که من از رنگ برای نمودارهای نوار در R. استفاده می کنم. آیا شما برای این کار مورد استفاده دارید؟من دوست دارم آن را بشنوم ، بنابراین در نظرات به من اطلاع دهید!
بررسی عمیق تر نگاشتهای AES () (زیبایی شناسی) در GGPLOT
ما در بالا دیدیم که چگونه می توانیم نمودارهایی را در GGPLOT ایجاد کنیم که از نقشه آرگومان پر از متغیر سیل یا متغیر DRV به رنگ میله ها در یک نمودار نوار استفاده می کنیم. GGPLOT از این نقشه ها به عنوان نگاشتهای زیبایی شناسی یاد می کند ، و آنها شامل همه چیزهایی هستند که در AES () در GGPLOT مشاهده می کنید.
نگاشتهای زیبایی روشی برای نقشه برداری از متغیرها در داده های شما به خصوصیات بصری خاص (زیبایی شناسی) یک نمودار است.
من می دانم که این می تواند کمی نظری به نظر برسد ، بنابراین اجازه دهید نقشه های زیبایی شناسی خاصی را که قبلاً دیده اید و همچنین نقشه های دیگر موجود در GEOM_BAR مرور کنیم.
بررسی لیست نگاشتهای زیبایی شناسی GEOM_BAR
نقشه های اصلی زیبایی شناسی برای نمودار نوار GGPLOT شامل موارد زیر است:
- X: یک متغیر را به یک موقعیت در محور x نقشه کنید
- Y: یک متغیر را به یک موقعیت در محور y نقشه کنید
- پر کنید: یک متغیر را به رنگ نوار نقشه کنید
- رنگ: یک متغیر را به رنگ طرح کلی نقشه نقشه برداری کنید
- linetype: یک متغیر را به یک نوار طرح بندی خط نقشه نقشه می کند
- آلفا: متغیر را به شفافیت نوار نقشه کنید
از لیست بالا ، ما قبلاً X را دیده ایم و نقشه های زیبایی شناسی را پر کرده ایم. ما همچنین شاهد هستیم که رنگ به عنوان یک پارامتر برای تغییر طرح کلی میله ها در مثال قبلی اعمال شده است.
من قصد ندارم زیبایی شناسی اضافی را در این پست مرور کنم ، اما اگر جزئیات بیشتری را دوست دارید ، کتاب کار رایگان را که شامل نمونه هایی از این زیبایی شناسی است با جزئیات بیشتر بررسی کنید!
نگاشتهای زیبایی در مقابل پارامترها در ggplot
من اغلب از مشتری های آموزش R می شنوم که با تمایز بین نگاشتهای زیبایی شناسی و پارامترهای موجود در GGPLOT اشتباه گرفته می شوند. من شخصاً وقتی برای اولین بار در مورد گرافیک در GGPlot نیز یاد گرفتم ، از این موضوع کاملاً گیج شدم. بگذارید سعی کنم برخی از سردرگمی ها را پاک کنم!
در بالا ، دیدیم که می توانیم از دو روش مختلف با GEOM_BAR استفاده کنیم. اول ، ما توانستیم با مشخص کردن Fill = 'Blue' در خارج از نقشه های AES () خود ، رنگ میله های خود را به رنگ آبی تنظیم کنیم. سپس ، ما با مشخص کردن Fill = DRV در داخل نقشه های AES () ما توانستیم متغیر DRV را به رنگ میله های خود نقشه برداری کنیم.
چه تفاوتی بین این دو روش کار با Fill و سایر نقشه های زیبایی شناسی وجود دارد؟
هنگامی که شما شامل پر کردن ، رنگ یا زیبایی شناسی دیگری در داخل AES () کد GGPLOT خود هستید ، به GGPlot می گویید که یک متغیر را برای آن زیبایی شناسی در نمودار خود ترسیم کند. این همان کاری است که ما وقتی گفتیم پر = DRV در بالا برای پر کردن انواع مختلف درایو با رنگ های مختلف انجام دادیم.
هر یک از نگاشتهای زیبایی شناختی که شما دیده اید نیز می تواند به عنوان یک پارامتر ، یعنی یک مقدار ثابت تعریف شده در خارج از نقشه های زیبایی شناسی AES () استفاده شود. شما دیدید که چگونه این کار را با پر کردن انجام دهید وقتی که نوار نمودار نوار آبی را با Fill = 'Blue' آبی کردیم. شما همچنین دیدید که چگونه می توانیم میله ها را با رنگ خاصی ترسیم کنیم وقتی از رنگ = '#add8e6' استفاده کردیم.
هر زمان که می خواهید متغیر را در داده های خود به زیبایی شناسی به نمودار خود نقشه برداری کنید ، می خواهید آن را در داخل عملکرد AES () مشخص کنید. و هر زمان که می خواهید یک پارامتر خاص را در نمودار خود سخت کنید (مثلاً میله های آبی را ایجاد کنید) ، می خواهید آن را در خارج از عملکرد AES () مشخص کنید. امیدوارم این امر به پاکسازی هرگونه سردرگمی شما در مورد تمایز بین نگاشتهای زیبایی و پارامترها کمک کند!
خطاهای متداول با نگاشتهای زیبایی و پارامترها در GGPLOT
هنگامی که من برای اولین بار R و GGPLOT را یاد گرفتم ، این تفاوت بین نگاشتهای زیبایی (مقادیر موجود در AES ()) و پارامترهای (موارد خارج از AES ()) دائماً من را گیج می کرد. خوشبختانه ، با گذشت زمان ، خواهید فهمید که این طبیعت دوم می شود. اما در ضمن ، من می توانم به شما در سرعت در این فرآیند با چند خطای رایج که می توانید مراقب باشید ، کمک کنم.
تلاش برای شامل نقشه های زیبایی شناسی در خارج از AES ()
اگر می خواهید متغیر DRV را برای پر کردن نقشه برداری کنید ، باید Fill = DRV را در AES () تماس GEOM_BAR خود قرار دهید. چه اتفاقی می افتد اگر آن را به طور تصادفی در خارج از کشور قرار دهید ، و در عوض GGPLOT (MPG) + GEOM_BAR (AES (X = کلاس) ، Fill = DRV) را اجرا کنید؟شما یک پیام خطایی دریافت خواهید کرد که به نظر می رسد:

هر زمان که این خطای را در مورد شیء مشاهده نکردید ، حتماً بررسی کنید که نقشه های زیبایی شناسی خود را در داخل تماس AES () قرار می دهید!
تلاش برای مشخص کردن پارامترهای موجود در تماس AES ()
از طرف دیگر ، اگر سعی کنیم یک مقدار پارامتر خاص (به عنوان مثال ، پر از "آبی") را در داخل نقشه AES () قرار دهیم ، خطا کمی آشکار است. نگاهی بیاندازید:

در این حالت ، GGPLOT در واقع نمودار نوار تولید می کند ، اما این چیزی نیست که ما در نظر داشتیم.
برای مبتدیان ، میله های موجود در نمودار نوار ما به جای آبی که به آن امیدوار بودیم قرمز هستند! همچنین ، یک افسانه از سمت نمودار نوار ما وجود دارد که به سادگی می گوید "آبی".
اینجا چه خبره؟در زیر کاپوت ، GGPLOT رشته "آبی" را گرفته و یک ستون پنهان جدید از داده ها ایجاد کرده است که در آن هر مقدار ساده می گوید "آبی". سپس ، آن ستون را به زیبایی شناسی پر می کند ، همانطور که قبلاً دیدیم وقتی که FILL = DRV را مشخص کردیم. این منجر به برچسب افسانه و رنگ تمام میله های تنظیم شده ، نه به رنگ آبی بلکه به رنگ پیش فرض در GGPLOT می شود.
اگر این گیج کننده است ، اکنون اشکالی ندارد. فقط به یاد داشته باشید: وقتی به مواردی از این دست رسیدگی می کنید ، دوبار را بررسی کنید تا مطمئن شوید که پارامترهای نمودار خود را در خارج از AES () تماس می گیرید!
اکنون باید درک کاملی از نحوه ایجاد نمودار نوار در R با استفاده از عملکرد نمودار نوار GGPLOT ، GEOM_BAR داشته باشید!
درک خود را محکم کنید
با چیزهایی که آموخته اید برای تحکیم درک خود آزمایش کنید. می توانید کتاب کار رایگان من را با کد از این مقاله بارگیری کنید تا به تنهایی کار کنید.
من فهمیدم که کار کردن از طریق کد به تنهایی بهترین راه برای یادگیری مباحث جدید برای من است تا من واقعاً آنها را به خاطر بسپارم وقتی که در آینده باید کارها را انجام دهم.
مربوط
برای ترک نظر برای نویسنده ، لطفاً لینک را دنبال کنید و در مورد وبلاگ آنها نظر دهید: برنامه نویسی R را بیاموزید و یک حرفه علوم داده ایجاد کنید |مایکل توت
R-Bloggers.com به روزرسانی های روزانه ایمیل در مورد اخبار R و آموزش های مربوط به یادگیری R و بسیاری از موضوعات دیگر ارائه می دهد. اگر به دنبال ارسال یا یافتن یک کار R/Data-Science هستید ، اینجا را کلیک کنید. آیا می خواهید محتوای خود را در R-Bloggers به اشتراک بگذارید؟اگر وبلاگ دارید ، اینجا را کلیک کنید ، یا اگر این کار را نمی کنید اینجا.
ویدیو های آموزشی فارکس...
ما را در سایت ویدیو های آموزشی فارکس دنبال می کنید
برچسب :
نویسنده : محبوب امانی
بازدید : 60
تاريخ : پنجشنبه
24 فروردين
1402 ساعت: 22:12