在R中的单个图上绘制两个变量的条形图和第三个变量的线图

问题描述 投票:0回答:1

我试图在R中使用ggplot2包绘制条形图(使用position ='identity', stat = 'identity')和相同图表上的线图。

我的数据包括3个主要关注的值

1-全局辐照度2-漫射辐照度3-温度

为了制作条形图,我在一个熔融数据帧中合并了全局和漫反射辐照度的值。虽然我在初始数据框中保持温度值是分开的,因为我不希望它的条形图与辐照度值。

现在问题是我无法从两个不同的数据帧制作ggplot。我使用这种方法得到的错误是

错误:ggplot2不知道如何处理class uneval的数据

即使两个数据集的类现在都是数据帧。

另一方面,我对如何在单个数据帧中包含我的值感到困惑,我可以将它们一起绘制为条形图和线条图。

我的数据代码是:

library(ggplot2)
library(officer)
library(reshape2)

data <- "U://30-Power & Water//25 Renewables//WORK//Data//PVPlanner//PVPlanner.csv"

data <- read.table(data,skip = 36, header = T,  sep=";")
data <- data.frame(data[1:12,])
data$Month <- factor(data$Month,levels = c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"))

而我的数据看起来像:

Month GHId GHIm Diffd Diffm  T24
1    Jan 3.27  101  0.92    29 13.3
2    Feb 3.92  110  1.23    34 13.3
3    Mar 5.30  164  1.58    49 13.9
4    Apr 6.18  185  1.89    57 14.9
5    May 6.93  215  2.00    62 16.4
6    Jun 7.53  226  1.80    54 18.4
7    Jul 7.42  230  1.87    58 21.1
8    Aug 7.06  219  1.58    49 22.0
9    Sep 5.97  179  1.39    42 21.3
10   Oct 4.50  140  1.26    39 18.7
11   Nov 3.53  106  0.99    30 15.9
12   Dec 2.90   90  0.86    27 13.3

从我的数据中生成熔化数据帧的代码是:

dfd <- melt(data[,c('Month','GHId','Diffd')],id.vars = 1)

我的ggplot的代码是:

ggplot() + geom_bar(dfd,aes(x = Month,y = value,fill = variable),stat = "identity",position = "identity")+geom_line(data,aes(Month, data[,6]), col=red)

我想制作这种情节:enter image description here

我期待获得有关我可以采用哪种方法来处理单个数据帧或从两个不同数据帧调用值的方法的指导。

提前致谢!问候

r dataframe plot ggplot2 bar-chart
1个回答
0
投票

好的..我能够发现我的错误,如果有来自两个数据帧的值,我们需要正确提到我们的代码中的数据,例如data = dfd中的geom

要么

我们需要使用函数文档中提到的代码的精确排列进行编码!

© www.soinside.com 2019 - 2024. All rights reserved.