使用R

时间:2017-11-05 09:17:03

标签: r plot

我是R的初学者,正在处理以下数据 -

  

月< - 1 2 3 4 5 6 7 8 9 10 11 12

     

销售< - 50 60 80 50 40 30 35 55 70 60 50 40

我必须使用plot()函数绘制这些数据,我可以通过对它进行某些编辑来完成以下操作 -

plot(Month, Coffee, type='l', ylim=c(0, 100))
abline(h=max(Coffee), col='red')

新要求是将X轴的'月'名称作为实际月份名称,即1月,2月,3月,.....,12月。

我尝试使用 -

来做到这一点
n_month <- format(ISOdate(2017,1:12,1),"%B")
plot(n_month, Coffee, type='l', ylim=c(0, 100))
plot(n_month, Coffee, type='l', ylim=c(0, 100), xlim=(1, 12))

我也尝试了以下内容 -

# 'xaxt' to suppress labels on x-axis
plot(Month, Coffee, ylim=c(0,100), xlab="Month", ylab="Coffee", xaxt="n", type='l')

# 'axis' to add in my own labels
axis(1, at=1:12, labels=month.name)

然而,最终的图表并未提及所有名称,而是某些名称,例如 - 1月,3月,5月,6月,7月,9月和十一月。

有关如何在X轴上获取所有12个月的名称的任何建议吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

我希望它适用于你

IF OBJECT_ID('[dbo].[Demo]') IS NOT NULL
BEGIN
    DROP TABLE [dbo].[Demo];
END;

CREATE TABLE [dbo].[Demo]
(
    [test1] INT NOT NULL
   ,[test2] INT
   ,[test3] INT
);

GO

/*
Msg 515, Level 16, State 2, Line 15
Cannot insert the value NULL into column 'test1', table 'TEST.dbo.Demo'; column does not allow nulls. INSERT fails.
*/

INSERT INTO [dbo].[Demo] ([test2], [test3])
VALUES (1, 1);

GO

CREATE TRIGGER TRG_DEMO_I_I ON [dbo].[Demo] INSTEAD  OF INSERT AS
BEGIN 

    INSERT INTO [dbo].[Demo] ([test1], [test2], [test3])
    SELECT [test2] + [test3], [test2], [test3]
    FROM inserted;
END;

GO

-- this is OK
INSERT INTO [dbo].[Demo] ([test2], [test3])
VALUES (1, 1);

SELECT *
FROM [dbo].[Demo];

GO

确保你的系统中有month <- c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Agu","Sep", "Oce", "Nov", "Dec") sales <- c(50, 60, 80, 50, 40, 30, 35, 55, 70, 60, 50, 40) dt<-data.frame( Month<-month, Sales=sales ) library(ggplot2) ggplot(dt ,aes( Month,Sales)) + geom_bar(stat="identity",aes(fill = "Month"), data =dt , alpha = 0.5 )

最后它会是这样的:

enter image description here

答案 1 :(得分:1)

我用 -

解决了这个问题
axis(1, at=1:12, labels=month.name, cex.axis=0.5)

&#39; cex.axis&#39;参数做了调整X轴上所有月份名称的技巧。