2013-06-04 43 views
9

có một giải pháp để sử dụng nhiều hơn một bằng dấu trong biểu thức (không nằm trong dấu ngoặc vuông) không? Tôi hiện đang làm nó với "=". Nhưng đó không phải là tốt đẹp, vì == và "=" nhìn khác nhau trên cốt truyện.Làm thế nào để sử dụng một số dấu bằng trong văn bản (x, y, biểu thức (...))

Minimal mẫu:

plot(0:5,0:5, type="n") 
saleprice <- 35 
revenue <- 98000 
text(1, 2, 
    bquote(paste(R(x[G]) == .(saleprice)%.%x[G], " = ", .(revenue)))) 

Xem hình ảnh sau đây cho tình trạng hiện tại: sample image

Tôi muốn sử dụng cái gì đó như:

bquote(R(x[G]) == .(saleprice)%.%x[G] == .(revenue)) 

Nhưng nó tạo ra lỗi.

+0

Huh, tôi chưa bao giờ nhận thấy trước đó R barfs khi phân tích cú pháp toán tử so sánh chuỗi. Nó không có vẻ để tâm trí bất cứ điều gì khác. Ngược lại, '1 <2 <3' với' 1 && 2 && 3', '1 & 2 & 3' hoặc' x <- y <- z'. –

+0

Lý do tại sao R không thích các nhà khai thác so sánh xích là ["nó đã được quyết định rằng một == b == c sẽ có không mong muốn ngữ nghĩa"] (http://comments.gmane.org/gmane.comp.lang .r.general/326420) – gebi

Trả lời

13

Sử dụng {} để đặt nhóm vô hình xung quanh sự bình đẳng đầu tiên.

text(1, 2, bquote({R(x[G]) == .(saleprice)%.%x[G]} == .(revenue))) 
+0

Ok, nó hoạt động xuất sắc. Cảm ơn bạn. – user2451870