Вы получаете эту ошибку, потому что одна из ваших переменных на самом деле является переменной фактора. Выполните
str(df)
, чтобы проверить это. Затем сделайте это двойное изменение переменной, чтобы сохранить цифры года вместо того, чтобы превращаться в номера уровней «1,2,3,4»:
df$year <- as.numeric(as.character(df$year))
EDIT: кажется, что ваш data.frame имеет переменную класс "array", который может вызвать pb. Попробуйте:
df <- data.frame(apply(df, 2, unclass))
и plto
Я делаю:
namespace System {
public static class ExtensionMethods {
public static string FullMessage(this Exception ex) {
if (ex is AggregateException) return (ex as AggregateException).InnerExceptions.Aggregate("[ ", (total, next) => $"{total}[{next.FullMessage()}] ") + "]";
var msg = ex.Message.Replace(", see inner exception.", "").Trim();
var innerMsg = ex.InnerException?.FullMessage();
if (innerMsg is object && innerMsg!=msg) msg = $"{msg} [ {innerMsg} ]";
return msg;
}
}
}
Это "структурные распечатки программы" все внутренние исключения и также обрабатывает AggregateExceptions и случаи где InnerException. Сообщение совпадает с сообщением