fmt
কিংবদন্তি আইটেমগুলির ফাঁক দিয়ে কোনও সম্পর্ক নেই। এর বিশদ বিবরণের জন্য fmt
দয়া করে সি-স্টাইলের স্ট্রিং ফর্ম্যাটিং কমান্ডগুলি ব্যবহার করুন দেখুন । R
পার্থক্যগুলি দেখতে কেবল আপনার কনসোলে নিম্নলিখিত কোড স্নিপেট পেস্ট করুন (পাই ~ 3.14):
sprintf("%f", pi)
sprintf("%.3f", pi)
sprintf("%1.0f", pi)
sprintf("%5.1f", pi)
sprintf("%05.1f", pi)
sprintf("%+f", pi)
sprintf("% f", pi)
sprintf("%-10f", pi) # left justified
sprintf("%e", pi)
sprintf("%E", pi)
sprintf("%g", pi)
sprintf("%g", 1e6 * pi) # -> exponential
sprintf("%.9g", 1e6 * pi) # -> "fixed"
sprintf("%G", 1e-6 * pi)
choro.legend()
legend()
অভ্যন্তরীণ কল । কিংবদন্তি আইটেমগুলির মধ্যে অনুভূমিক ব্যবধান কমিয়ে আনার জন্য আপনাকে ফাংশনের text.width
প্যারামিটারটি পরিবর্তন করা উচিত legend()
। দুর্ভাগ্যক্রমে বাহ্যিকভাবে choro.legend
সেট করার জন্য কোনও পরামিতি সরবরাহ করে না text.width
বরং এটি অভ্যন্তরীণভাবে গণনা করে। আমি একটি space_reduction
প্যারামিটার যুক্ত করেছি choro.legend
এবং মূল ফাংশনটি সামান্য পরিবর্তিত করেছি:
choro.legend <- function (px, py, sh, under = "under", over = "over", between = "to",
fmt = "%g", cex = 1, space_reduction = 0, ...)
{
x = sh$breaks
lx = length(x)
if (lx < 3)
stop("break vector too short")
res = character(lx + 1)
res[1] = paste(under, sprintf(fmt, x[1]))
for (i in 1:(lx - 1)) res[i + 1] <- paste(sprintf(fmt, x[i]),
between, sprintf(fmt, x[i + 1]))
res[lx + 1] <- paste(over, sprintf(fmt, x[lx]))
maxwidth <- max(strwidth(res)) - space_reduction
temp <- legend(x = px, y = py, legend = rep(" ", length(res)),
fill = sh$cols, text.width = maxwidth, cex = cex, ...)
text(temp$rect$left + temp$rect$w, temp$text$y, res, pos = 2,
cex = cex)
}
একটি আর স্ক্রিপ্ট ফাইল এবং source
এটিতে এই স্নিপেট সংরক্ষণ করুন । একটি পুনরুত্পাদনযোগ্য কোড স্নিপেট নিম্নলিখিতগুলির মতো হবে:
library(GISTools)
data(newhaven)
blocks
val <- blocks@data$POP1990
shade <- auto.shading(val)
choropleth(blocks, v= val, shade)
choro.legend(514000, 175000,shade,title='My Legend',cex=.8, bty = "n", fmt = "%0.0f",
space_reduction=4000)
ধীরে ধীরে হ্রাস / space_reduction
কাঙ্ক্ষিত ফলাফল অর্জনের জন্য প্যারামিটার বৃদ্ধি ।