Как я могу отформатировать метки осей с показателями ggplot2 и масштабами?
==========================================================================

С новой версией ggplot2 и масштабами я не могу понять, как получить метку оси в научной нотации. Например:

дает мне

![Example ggplot with scales](/imgs/jvLLM.png)

Мне бы хотелось, чтобы метки осей были 0, 5 × 10 ^ -5, 1 × 10 ^ -4, 1,5 × 10 ^ -4 и т. Д. Я не могу определить правильную комбинацию`scale_y_continuous()` а также`math_format()` (по крайней мере, я думаю, что это то, что мне нужно).

`scale_y_log10()` log преобразует ось, которую я не хочу.`scale_y_continuous(label = math_format())` просто дает мне 10 ^ 0, 10 ^ 5e-5 и т. д. Я понимаю, почему последний дает такой результат, но это не то, что я ищу.

Я использую ggplot2\_0.9.1 и scale\_0.2.1

 

 Просто добавив parse () к функции Scientific\_10 () (и изменив «x» на правильный символ «times»), вы получите следующее:

![]()

 Возможно, вы все еще хотите усовершенствовать функцию, чтобы она работала с 0 более элегантно, но я думаю, что это так!



 он также удаляет ведущие нули в показателях (от 10 ^ 04 до 10 ^ 4 и т. д.). Это было адаптировано из полезных ответов, приведенных выше.

 Я также включил функции масштабирования оболочки ниже.



 приведенный выше, следующее убирает знаки + и лучше обрабатывает 0 (функция также анонимно вставлена):



 OP стремится отформатировать показатели в качестве показателей. Это можно сделать с помощью`trans_format` а также`trans_breaks` функции вВес пакет:

[![]()](/imgs/fq9uF.png)



 

![]()

 Полагаю, если вы действительно хотите, чтобы там были десятки, вы могли бы обернуть это в другую функци

![]()