小编Mr.*_*ver的帖子

上下滚动时淡入淡出

我想扩展这个答案中提供的代码。那里的代码在向下滚动时淡入元素,在向上滚动时淡出图像,但在向下滚动时不会淡出。我想实现所有元素:向下滚动时淡入,元素离开视口时淡出,向上滚动时淡入,元素离开视口时淡出。

html javascript css jquery

4
推荐指数
1
解决办法
1万
查看次数

饼图和条形图在同一图上对齐

在看到有关如何在 ggplot2 中从经济学家那里重新创建此图的问题后,我决定自己从头开始尝试(因为没有提供代码或数据),因为我发现这很有趣。

这是我迄今为止设法做的事情:

在此处输入图片说明

我能够相对轻松地做到这一点。但是,我正在努力放置饼图。因为 ggplot 使用笛卡尔坐标来制作饼图,所以我不能在同一个图表上有条形图和饼图。所以我发现geom_arc_bar()from ggforce,它确实允许笛卡尔坐标系上的馅饼。但是,问题出在coord_fixed(). 我可以让馅饼对齐,但没有coord_fixed(). 但是,对于coord_fixed(),我无法使图表与经济学人图表的高度相匹配。没有coord_fixed()我可以,但馅饼是椭圆形而不是圆形。见下文:

coord_fixed()

在此处输入图片说明

没有coord_fixed()

在此处输入图片说明

我尝试过的另一个选择是分别制作一系列饼图,然后将这些图组合在一起。但是,我努力使情节与gridExtra其他替代方案保持一致。我确实结合了油漆。显然这是有效的,但不是程序化的。我需要一个 100% 基于 R 的解决方案。

我在油漆中粘贴来自 R 的单独图像的解决方案:

在此处输入图片说明

有人有解决这个问题的方法吗?我认为这是一个有趣的问题,我提供了一个起点。我愿意接受任何建议,也可以随意提出完全不同的方法,因为我承认我的不是最好的。谢谢!

代码:

# packages
library(data.table)
library(dplyr)
library(forcats)
library(ggplot2)
library(ggforce)
library(ggnewscale)
library(ggtext)
library(showtext)
library(stringr)


# data

global <- fread("Sector,ROE,Share,Status
                 Technology,14.2,10,Local
                 Technology,19,90,Multinational
                 Other consumer,16.5,77,Multinational
                 Other consumer,20.5,23,Local
                 Industrial,13,70,Multinational
                 Industrial,18,30,Local
                 Cyclical consumer,12,77,Multinational
                 Cyclical consumer,21,23,Local
                 Utilities,6,88,Local
                 Utilities,11,12,Multinational
                 All sectors,10,50,Local
                 All sectors,10.2,50,Multinational
                 Financial,6,27,Multinational
                 Financial,10.5,73,Local
                 Diversified,4.9,21,Local
                 Diversified,5,79,Multinational …
Run Code Online (Sandbox Code Playgroud)

charts r bar-chart ggplot2 pie-chart

4
推荐指数
2
解决办法
181
查看次数

在 ggplot 中用气泡注释绘图

我正在尝试从 highcharts复制此折线图。注释包含在语音/文本气泡中。我尝试在 ggplot 中使用 geom_label 执行此操作。为了获取点,我添加了具有向上或向下填充三角形形状的 geom_point 。虽然这适用于深色和不透明的填充和颜色,但它不适用于带有黑色轮廓的白色半透明填充,因为您可以清楚地看到三角形的底部。

有人知道解决这个问题的方法或更好的方法吗?

代码:

library(ggplot)

ggplot(france, aes(Distance, Elevation))+
  geom_area(fill = "#90ed7d", color = "#434348", 
            size = 0.7, alpha = 0.5)+ # area chart
  # location labels
  geom_label(aes(x, y-200, label = text), data = plot_labels[-3,],
             label.padding = unit(.4, "lines"), label.size = unit(.4, "mm"),
             label.r = unit(.05, "lines"), alpha = 0.5,
             vjust = 0.5, size = 3, family = "Lucida Grande")+ 
  # location labels points
  geom_point(aes(x, y-105, fill = "white"), data = plot_labels[-3,], 
             shape …
Run Code Online (Sandbox Code Playgroud)

graphics r graph ggplot2

3
推荐指数
1
解决办法
724
查看次数

找到至少一列不是 NA 的最后一行

我有一个对象,在一定数量的行之后,每列中都有所有 NA。一些列在此之前也有 NA。我想获取至少一列有数据的最后一行的行索引。以下是一些可以使用的示例数据:

编辑:为了健壮性,我在@G 之后的第二行添加了 NA。格洛腾迪克评论。在这种情况下,输出仍应为 5。

df <- data.frame(a = 1:5, b = 6:10, c = c(1:3,rep(NA, 2)))
df <- rbind(df, rep(NA, ncol(df)), rep(NA, ncol(df)))
df[2,] <- NA

df
   a  b  c
1  1  6  1
2 NA NA NA
3  3  8  3
4  4  9 NA
5  5 10 NA
6 NA NA NA
7 NA NA NA
Run Code Online (Sandbox Code Playgroud)

r data-manipulation dataframe dplyr data.table

1
推荐指数
1
解决办法
596
查看次数