我运行以下代码:
ggplot(pat, aes(y=CANCompany,x=USCompany,alpha=TotalPatents,
size=SharedPatents,color = Revenue)) +
theme(legend.position="bottom", legend.box.just="center",
legend.key.size=unit(0.55,"cm")) +
scale_size(range = c(0, 15)) +
scale_colour_gradient(low="yellow", high="green4") + geom_point() +
theme(axis.text.x = element_text(angle=90, vjust=0.5, size=10),
axis.text.y = element_text(angle=0, vjust=0.5, size=10)) +
scale_x_discrete(position = "top") +
coord_fixed() +
theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
panel.background = element_blank(), axis.line = element_line(colour = "black"))关于下列数据:(显示前10行):
CANCompany USCompany SharedPatents Revenue TotalPatents
<chr> <chr> <int> <int> <int>
1 Blackberry Google 3 58 27
2 Blackberry IBM 1 52 71
3 Blackberry Apple 2 107 46
4 Blackberry Lockheed 11 43 29
5 Blackberry CapitalOne 2 142 70
6 Blackberry Merck 5 10 68
7 Bombardier Google 8 89 34
8 Bombardier IBM 12 100 24
9 Bombardier Apple 4 8 29
10 Bombardier Lockheed 5 134 53我得到了以下情节:

然后,我将以下两行添加到代码中:
+ scale_x_discrete(limits=c("IBM","Merck","Lockheed","Google","Apple","CapitalOne")) +
scale_y_discrete(limits=c("Bombardier","Iogen","Westport","Nortel","Mitel","Blackberry"))并获得以下错误:
“x”的比例已经存在。为“x”添加另一个刻度,这将取代现有的刻度。
警告信息:
删除了包含缺失值(geom_point)的6行。
在试图重新排序轴之后,这个图现在看起来如下:

有没有办法让x轴和y轴都按我喜欢的方向调整?
为什么一行数据会消失?
发布于 2017-03-09 21:09:23
警告告诉您您使用了scale_x_discrete两次。尝试删除第一个实例并将position = top添加到第二个实例。
您有一个缺失行,因为在scale_y_discrete中,您用小写'p‘拼写"Westport“。从第一个图表看,它应该是"WestPort“。
此外:
我还会考虑整理您的数据:有一个名为"patent_type“的列(shared/ named )和一个带有专利号的列。有一个名为"country_location“(美国或加拿大)的列和另一个"company_name”。
我不知道圆点图是这个数据的最佳选择。似乎你试图把很多变量塞进一个图中(例如,用alpha表示数字不是最好的选择)。
https://stackoverflow.com/questions/42704821
复制相似问题