Câu trả lời:
Tôi nghĩ bạn đang tìm kiếm điều này:
require(ggplot2)
df <- data.frame(x=seq(1, 1e9, length.out=100), y=sample(100))
# displays x-axis in scientific notation
p <- ggplot(data = df, aes(x=x, y=y)) + geom_line() + geom_point()
p
# displays as you require
require(scales)
p + scale_x_continuous(labels = comma)
Bạn đã thử một cái gì đó như:
options(scipen=10000)
trước khi âm mưu?
Chỉ là bản cập nhật cho những gì @Arun đã thực hiện, vì tôi đã thử nó hôm nay và nó không hoạt động vì nó đã được thực tế hóa thành
+ scale_x_continuous(labels = scales::comma)
require(scales)
? Điều này nhập gói có chứa comma
quy mô. Khi bạn đã khám phá ra, bạn cũng có thể chỉ định gói khi đề cập đến nó thay vì yêu cầu nó trước đó.
Như một giải pháp chung hơn, bạn có thể sử dụng scales::format_format
để loại bỏ ký hiệu khoa học. Điều này cũng cung cấp cho bạn nhiều quyền kiểm soát về cách bạn muốn các nhãn của mình được hiển thị chính xác, trái ngược với scales::comma
điều này chỉ thực hiện phân tách bằng dấu phẩy của các thứ tự độ lớn.
Ví dụ:
require(ggplot2)
require(scales)
df <- data.frame(x=seq(1, 1e9, length.out=100), y=sample(100))
# Here we define spaces as the big separator
point <- format_format(big.mark = " ", decimal.mark = ",", scientific = FALSE)
# Plot it
p <- ggplot(data = df, aes(x=x, y=y)) + geom_line() + geom_point()
p + scale_x_continuous(labels = point)
Có một giải pháp không yêu cầu thư viện tỷ lệ.
Bạn co thể thử:
# To deactivate scientific notation on y-axis:
p + scale_y_continuous(labels = function(x) format(x, scientific = FALSE))
# To activate scientific notation on y-axis:
p + scale_y_continuous(labels = function(x) format(x, scientific = TRUE))
# To deactivate scientific notation on x-axis:
p + scale_x_continuous(labels = function(x) format(x, scientific = FALSE))
# To activate scientific notation on x-axis:
p + scale_x_continuous(labels = function(x) format(x, scientific = TRUE))
Không phải giải pháp chung đơn giản nhất để đặt mức phạt mà R sử dụng cho ký hiệu khoa học cao hơn sao?
tức là đặt scipen()
thành một số mà bạn cảm thấy thoải mái.
Ví dụ: Nếu trục tối đa của bạn trên biểu đồ có thể là 100 000, cài đặt scipen(200000)
sẽ đảm bảo rằng R (và ggplot) sẽ sử dụng ký hiệu chuẩn cho tất cả các số dưới 200000 và sẽ không có yêu cầu thêm bất kỳ dòng nào vào hàm ggplot.