Ggplot2 এ গ্রীক চিহ্নগুলি কীভাবে ব্যবহার করবেন?


105

আমার বিভাগগুলির গ্রীক অক্ষরের সাথে নামকরণ করা দরকার। আমি ব্যবহার করছি ggplot2, এবং এটি ডেটা সহ সুন্দরভাবে কাজ করে। দুর্ভাগ্যক্রমে আমি বুঝতে পারি না যে কীভাবে এই অক্ষরগুলি গ্রীক চিহ্নগুলিকে এক্স অক্ষের উপরে রাখবেন (টিক চিহ্নগুলিতে) এবং এগুলিকে কিংবদন্তিতে হাজির করুন। এটা করতে কোন উপায় আছে কি?

আপডেট: আমার লিঙ্কটি একবার ছিল , তবে আমি যা করতে চাই তা সম্পাদন করার জন্য কোনও ভাল পদ্ধতি বর্ণনা করা হয়নি।


4
এর আলোচনা দেখুন expressionফাংশন এখানে: stackoverflow.com/questions/1395105/getting-latex-into-r-plots
DrewConway

viewportsএকটি ggplot2 থেকে প্রাপ্ত করার কোনও ইঙ্গিত আছে কি ? যদি এটি করা যায় তবে আমি বিশ্বাস করি যে এক্স টিক চিহ্নগুলি পরিবর্তন করা সরাসরি এগিয়ে থাকবে।
স্যাম

আপনি latex2expপ্যাকেজটি ব্যবহার করতে পারেন : cran.r-project.org/web/packages/latex2exp/vignettes/…
এনরিক পেরেজ হেরেরো

উত্তর:


153

এখানে একটি দুর্দান্ত উইকির লিঙ্ক রয়েছে যা গ্রীক চিহ্নগুলি ggplot2- এ কীভাবে রাখবে তা ব্যাখ্যা করে। সংক্ষেপে, গ্রীক চিহ্নগুলি পেতে আপনি যা করছেন তা এখানে

  1. পাঠ্য লেবেল:parse = T ভিতরে geom_textবা ব্যবহার করুন annotate
  2. অক্ষ লেবেল:expression(alpha) গ্রীক আলফা পেতে ব্যবহার করুন ।
  3. মুখ লেবেল:labeller = label_parsed ভিতরে ব্যবহার করুন facet
  4. কিংবদন্তি লেবেল:bquote(alpha == .(value)) কিংবদন্তির লেবেলে ব্যবহার করুন ।

আপনি লিঙ্কে এই বিকল্পগুলির বিস্তারিত ব্যবহার দেখতে পারেন

সম্পাদনা টিক চিহ্ন সহ গ্রীক চিহ্ন ব্যবহার করার উদ্দেশ্যটি নিম্নলিখিত হিসাবে অর্জন করা যেতে পারে

require(ggplot2);
data(tips);
p0 = qplot(sex, data = tips, geom = 'bar');
p1 = p0 + scale_x_discrete(labels = c('Female' = expression(alpha),
                                      'Male'   = expression(beta)));
print(p1);

এটি করার সময় উপলব্ধ বিভিন্ন চিহ্নগুলির সম্পূর্ণ ডকুমেন্টেশনের জন্য এবং সেগুলি কীভাবে ব্যবহার করবেন তা দেখুন ?plotmath


আমি চাই গ্রীক চিহ্নগুলি টিকগুলি চিহ্নিত করুন। আমি নিশ্চিত না যে আমি এই উত্তরটি অনুসরণ করেছি। আমি এটি চেষ্টা করে ফিরে লিখব। দিকের জন্য আপনাকে ধন্যবাদ।
স্যাম

এটি অন্তত আমার উদ্দেশ্যে কাজ করে না। যদিও পয়েন্টারের জন্য আপনাকে ধন্যবাদ।
স্যাম

@ সাম, আমার সম্পাদনায় উদাহরণ কোডটি দেখুন। এটি আপনাকে এক্স-অক্ষের টিক চিহ্নগুলি সহ গ্রীক চিহ্ন দেয়। এটা কি যেটা তুমি খুজছো?
রামনাথ

8
আমি গ্রীক বর্ণের পরে একটি তারকাচিহ্ন ('*') যুক্ত করতে চাই। কেউ কি করতে পারে জানেন?
পোলারাইজ করুন

4
আমি সম্প্রতি শিখেছি যে অন্য কোনো বিকল্প ব্যবহার করা substitute, এটি জায়গায় যেখানে কাজ করে expressionকাজ করে না, এবং এমনকি মত অন্যান্য ফর্ম্যাটিং পারবেন italics, boldইত্যাদি
স্যাম

45

সহজ সমাধান: ইউনিকোড অক্ষর ব্যবহার করুন

কোনও expressionবা অন্যান্য প্যাকেজ দরকার নেই।
এটি ggplot জন্য একটি নতুন বৈশিষ্ট্য কিনা তা নিশ্চিত না, তবে এটি কার্যকর হয়। এটি গ্রীক এবং নিয়মিত পাঠ্যকে মিশ্রিত করা সহজ করে তোলে (টিক্সগুলিতে '*' যুক্ত করার মতো)

কেবল পাঠ্য স্ট্রিংয়ের মধ্যে ইউনিকোড অক্ষর ব্যবহার করুন। আমি মনে করতে পারি সমস্ত বিকল্পের জন্য ভাল কাজ করে বলে মনে হচ্ছে। সম্পাদনা করুন: পূর্বে এটি ফেসবুক লেবেলে কাজ করে না। সম্ভবত এটি এক পর্যায়ে স্থির করা হয়েছে।

library(ggplot2)
ggplot(mtcars, 
       aes(mpg, disp, color=factor(gear))) + 
  geom_point() + 
  labs(title="Title (\u03b1 \u03a9)", # works fine
       x= "\u03b1 \u03a9 x-axis title",    # works fine
       y= "\u03b1 \u03a9 y-axis title",    # works fine
       color="\u03b1 \u03a9 Groups:") +  # works fine
  scale_x_continuous(breaks = seq(10, 35, 5), 
                     labels = paste0(seq(10, 35, 5), "\u03a9*")) + # works fine; to label the ticks
  ggrepel::geom_text_repel(aes(label = paste(rownames(mtcars), "\u03a9*")), size =3) + # works fine 
  facet_grid(~paste0(gear, " Gears \u03a9"))

2019-08-28 এ ডিপেক্স প্যাকেজ (v0.3.0) দ্বারা তৈরি করা হয়েছে


4
চমৎকার উত্তর. ইউনিকোডের অক্ষরগুলির জন্য আরও দেখুন: stackoverflow.com/questions/27690729/…
প্যাট্রিকটি

খুব নমনীয় !!
jooal

4
এটি সর্বোত্তম উপায় কারণ আপনি দ্বারা তৈরি হওয়া অবজেক্টের ধরণের বিষয়ে ত্রুটিপূর্ণ না expressionবা bquote- আপনি এমন একটি চরিত্রের অবজেক্টের সাথে সমাপ্ত হন যা আপনি চরিত্রের অবজেক্টগুলি অন্য কোনও উপায়ে ব্যবহার করতে পারেন।
জিএমএসএল

4
এটি কেবল সবচেয়ে সহজ পদ্ধতিই নয়, এটি সর্বোত্তমও, যেহেতু এটি বেশিরভাগ ক্ষেত্রে কাজ করে এবং অন্যান্য ফাংশনগুলির উপর নির্ভর করে না।
স্কুইজি

এটি প্রচুর সতর্কতা উত্পন্ন করে, এর প্রায় একশ লাইনের:Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “conversion failure on '>3σ' in 'mbcsToSbcs': dot substituted for <cf>
পাটাফিকস

38

ব্যবহারের expression(delta)যেখানে ছোট হাতের জন্য 'ব-দ্বীপ' δও 'ডেল্টা' রাজধানী পেতে Δ

গ্রীক অক্ষরের সম্পূর্ণ তালিকা এখানে:

Α α আলফা
Β β বিটা
Γ γ গামা
Δ δ ব-দ্বীপ
Ε ε Epsilon
Ζ ζ জিটা
Η η ETA
Θ θ থেটা
Ι ι ফোঁটা
Κ κ কাপ্পা
Λ λ ল্যামডা
Μ μ মিউ
Ν ν নিউ
Ξ ξ একাদশ
Ο ο Omicron
Π π পাই
Ρ ρ রো
Σ σ সিগমা
τ au তাউ
Υ s উপসিলন
φ ফাই
Χ i চি
Ψ ψ পিএসআই
Ω ω ওমেগা

সম্পাদনা: মন্তব্য থেকে অনুলিপি করা, যখন অন্য শব্দের সাথে ব্যবহার করে যেমন ব্যবহার করুন:expression(Delta*"price")


4
আমি কীভাবে একটি লেবেল পেতে পারি Δprice? expression(Deltaprice)কাজ করে না, কাজও করে নাexpression(Delta price)
jf328

4
ধন্যবাদ তবে ঠিক কীভাবে? xlab(expression(Delta)price)একটি ত্রুটি দেয়
jf328

4
অভিব্যক্তি (ডেল্টা * দাম)
kennyB

গ্রীক-ফর্ম (ল্যাটিন-ফর্মের বিপরীতে) পাওয়ার জন্য কী উপায় আছে? ল্যাটিন ওয়াইয়ের সাথে এন.ইউইকিপিডিয়া.org / উইকি / আপসিলন সংবাদপত্র দেখুন (আমি এন.ইউইকিপিডিয়া /
অ্যাড্রিয়ান

6
এক্সপ্রেশন (ডেল্টা * "দাম") কাজ করে। বাক্যবিন্যাস পছন্দ করবেন না।
39

16

আপনি latex2expযা করতে চেয়েছিলেন তা করার জন্য আপনার প্যাকেজের দরকার নেই। নিম্নলিখিত কোডটি কৌশলটি করবে।

ggplot(smr, aes(Fuel.Rate, Eng.Speed.Ave., color=Eng.Speed.Max.)) + 
  geom_point() + 
  labs(title=expression("Fuel Efficiency"~(alpha*Omega)), 
color=expression(alpha*Omega), x=expression(Delta~price))

এখানে চিত্র বর্ণনা লিখুন

এছাড়াও, কিছু মন্তব্য (এই বিন্দুর প্রতিক্রিয়াবিহীন) কোনও গ্রীক চিঠির পরে একটি নক্ষত্র (*) লাগানোর বিষয়ে জিজ্ঞাসা করেছিল। expression(alpha~"*")কাজ করে, তাই আমি এটিকে চেষ্টা করার পরামর্শ দিই।

আরও মন্তব্য পাওয়ার বিষয়ে জিজ্ঞাসা করা হয়েছিল Δ Priceএবং আমি এটি অর্জনের সবচেয়ে সহজ উপায় expression(Delta~price))। আপনার যদি গ্রীক বর্ণের আগে কিছু যুক্ত করার প্রয়োজন হয় তবে আপনি এটিও করতে পারেন: expression(Indicative~Delta~price)যা আপনাকে পেয়ে যায়:

এখানে চিত্র বর্ণনা লিখুন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.