首页 文章

如何结合情节和传奇?

提问于
浏览
3

我正试图将一个图例附加到R中的图中 . 我尝试了以下代码(取自http://www.harding.edu/fmccown/r/

# Define cars vector with 5 values
cars <- c(1, 3, 6, 4, 9)

# Define some colors ideal for black & white print
colors <- c("white","grey70","grey90","grey50","black")

# Calculate the percentage for each day, rounded to one 
# decimal place
car_labels <- round(cars/sum(cars) * 100, 1)

# Concatenate a '%' char after each value
car_labels <- paste(car_labels, "%", sep="")

# Create a pie chart with defined heading and custom colors
# and labels
pie(cars, main="Cars", col=colors, labels=car_labels,
   cex=0.8)

# Create a legend at the right   
legend(1.5, 0.5, c("Mon","Tue","Wed","Thu","Fri"), cex=0.8, 
   fill=colors)

但是,这不能很好地工作 . 在 pie(cars, main="Cars", col=colors, labels=car_labels,cex=0.8) 行之后,情节显示没有传说:-) .......我在互联网上看到的每个例子似乎都有 legend 功能,因为它看起来非常奇怪...... ........

当我尝试执行图例功能时,我得到了

图例(1.5,0.5,c(“星期一”,“星期二”,“星期三”,“星期四”,“星期五”),cex = 0.8,填充=颜色)strwidth错误(图例,单位=“用户”, cex = cex):plot.new还没有被调用

2 回答

  • 5

    你离开了坐标系 . 试试这个

    # Create a legend at the right   
    legend("topleft", c("Mon","Tue","Wed","Thu","Fri"), cex=0.8, fill=colors)
    

    产生下图:

    pie chart

    有关不同的展示位置选项,请参阅 legend 的帮助页面 .

  • 1

    我认为 1.5, 0.5 的位置使它脱离了页面 . 尝试

    legend("right", c("Mon","Tue","Wed","Thu","Fri"), cex=0.8, fill=colors)
    

    pie 函数之后,它显示没有图例; legend 函数将图例添加到当前图中 .

    PS . 您也可以考虑其他类型的情节 . 饼图因视觉上的误导而臭名昭着 .

相关问题