Проблема в том, что 1e41 настолько ближе к 0, чем 1e45, что он практически одинаков.Рассматривали ли вы работу с логарифмической шкалой?
plot(x,y,ylim=c(1e41,1e45), log = 'y')
или даже
plot(x, y, log = 'y')
Подумайте об этом по-другому - измените масштаб ваших данных, разделив ваш диапазон на 1e41: c(8e41, 1e44)/ 1e41
- выполучить 8 и 1000. Есть ли существенная разница между началом шкалы с 0 (или 1) против 8?Если вместо этого вы решили разделить на 1e40, вы смотрите на 80 и 10000.Попробуйте следующий код, чтобы увидеть это:
m <- 1e41 # change this as desired
plot(x, y / m)
abline(h = c(0, 1e41 / m))
При изменении m
изменяются только цифры на оси Y, относительные позиции не меняются.Посмотрите, насколько близки 0 и 8e41, и вы поймете, почему на самом деле не имеет значения, начинается ли график с 0 или 1e41.Как доля от общей высоты графика, разница составляет 1 / 1000.
Изменение значений, при которых ось помечена
Вот еще один вариант для вас - изменение значений вкоторый сюжет помечен.Для этого необходимо выполнить два шага - сначала удалить метки оси при первоначальном создании графика, а затем добавить те, которые вам действительно нужны:
plot(x, y, yaxt = 'none')
axis(2, c(1e41, seq(1e43, 1e44, 1e43)))