三元图如何用十进制而不是科学记数法制作图例标签
Ternary Diagram How to make the legend labels in decimal instead of scientific notation
我在 R 中使用 ggtern 包来绘制三元图。我在自定义 'fill' 的图例时遇到问题。这是我的代码:
library(ggtern)
setwd("~/R/data")
library(XLConnect)
df <- readWorksheetFromFile("ternary_two_wells.xlsx",sheet=1,startRow = 1, endCol=7)
# Feldspar = Feldspar[with(Feldspar, order(-P.Gpa)), ]
df = df[with(df,order(-ReTOC)), ]
# Build and Render the Plot
ggtern(data = df, aes(x = Silicate, y = Carbonate, z = Clay)) +
#the layer
geom_point(aes(fill = Permeability,
size = ReTOC,
shape = Well)) +
#scales
scale_shape_manual(values = c(21, 24)) +
scale_size_continuous(range = c(2.5, 7.5)) +
scale_fill_gradient(low = 'green', high = 'red') +
#theme tweaks
theme_bw() +
theme(legend.position = c(0, 1),
legend.justification = c(0, 1),
legend.box.just = 'left') +
#tweak guides
guides(shape= guide_legend(order =1,
override.aes=list(size=5)),
size = guide_legend(order =2),
fill = guide_colourbar(order=3)) +
#labels and title
labs(size = 'ReTOC/%BV',
fill = 'Permeability/nD') +
ggtitle('Two Encana Wells')
生成的三元图如下所示:
看到 'Permeability/nD' 图例了吗?那是科学记数法。我如何让它以十进制显示值?
您可以使用包 scales 和 scale_fill_gradient
中的 labels
参数来使用逗号而不是科学记数法。
library(scales)
scale_fill_gradient(low = 'green', high = 'red', labels = comma)
我在 R 中使用 ggtern 包来绘制三元图。我在自定义 'fill' 的图例时遇到问题。这是我的代码:
library(ggtern)
setwd("~/R/data")
library(XLConnect)
df <- readWorksheetFromFile("ternary_two_wells.xlsx",sheet=1,startRow = 1, endCol=7)
# Feldspar = Feldspar[with(Feldspar, order(-P.Gpa)), ]
df = df[with(df,order(-ReTOC)), ]
# Build and Render the Plot
ggtern(data = df, aes(x = Silicate, y = Carbonate, z = Clay)) +
#the layer
geom_point(aes(fill = Permeability,
size = ReTOC,
shape = Well)) +
#scales
scale_shape_manual(values = c(21, 24)) +
scale_size_continuous(range = c(2.5, 7.5)) +
scale_fill_gradient(low = 'green', high = 'red') +
#theme tweaks
theme_bw() +
theme(legend.position = c(0, 1),
legend.justification = c(0, 1),
legend.box.just = 'left') +
#tweak guides
guides(shape= guide_legend(order =1,
override.aes=list(size=5)),
size = guide_legend(order =2),
fill = guide_colourbar(order=3)) +
#labels and title
labs(size = 'ReTOC/%BV',
fill = 'Permeability/nD') +
ggtitle('Two Encana Wells')
生成的三元图如下所示:
您可以使用包 scales 和 scale_fill_gradient
中的 labels
参数来使用逗号而不是科学记数法。
library(scales)
scale_fill_gradient(low = 'green', high = 'red', labels = comma)