2010-09-28 4 views
2

Привет дружественных компьютерных людей,Очистка с barplot в R

Я новичок в R, и я получаю немного потеряли в огромном мире настройки параметров сюжета. В настоящее время у меня есть штрих-код, который looks like this. Моя основная проблема - очистка графика, так что каждый бар связан с категорией. Прямо сейчас шрифты установлены так, чтобы они перекрывались и не отображали все категории.

Другими словами, я хотел бы:

  1. Есть барные имена чтения по горизонтали.
  2. Задайте параметры шрифта, чтобы показать каждую категорию, т. Е. Каждая панель имеет имя. Может быть, это связано с сокращением размера шрифта?

Любая помощь по этому вопросу была бы принята с благодарностью!

Спасибо :)

ответ

4

EDIT: Очень хорошее предложение о ucfagls включены. Спасибо!

увидеть варианты las в номинальной и cex.names в barplot:?

# Sample dataset 
x <- rpois(10,20) 
names(x) <- replicate(10, 
    paste(sample(LETTERS[1:10],10),collapse="") 
) 

# Demonstration of the options 
op <- par(mar = c(5,6,4,2) + 0.1) 
barplot(x,horiz=T,las=1,cex.names=0.5) 
par(op) 

Дает:

alt text

Так настроить свой собственный код, используя опции las и cex.names. Также проверьте параметр mar на странице справки, чтобы узнать, как вы можете настроить значения в случае падения ваших меток.

+0

Спасибо, Joris. Я предполагаю, что x представляет собой dataframe, нет? Кроме того, это, кажется, устраняет бары и переименовывает их с буквами, ни один из которых я не хочу. Есть ли способ сделать это, сохраняя текущие имена и все данные, т. Е. Бары? –

+0

@ Эрик: это всего лишь образцы данных, чтобы показать вам, как это работает. Единственное, что вам нужно сделать, это использовать las = 1 и cex.names = 0.5 (или другое значение, которое вам подходит). Все остальное просто для того, чтобы вы могли запустить код. –

+1

@ Эрик; вы также (вероятно) должны добавить дополнительное пространство в левый край графика для размещения меток. Вам нужно сделать это перед вызовом 'barplot()' call ** и ** после этого. Поэтому добавьте 'op <- par (mar = c (5,6,4,2) + 0,1)' ** до ** 'barplot (....)', ** и ** 'par (op) '** после **' barplot (....) '. Если вы увеличиваете вертикальную высоту графического устройства (окна), вы, вероятно, сможете уйти, не уменьшая метки на панели (т. Е. Вы можете оставить код 'cex.names = 0.5' кода Joris) , –