Questions tagged «ggrepel»

3
在geom_point中标记点
我正在使用的数据来自下面列出的互联网资源 nba <- read.csv("http://datasets.flowingdata.com/ppg2008.csv", sep=",") 我想做的是创建一个2D点图,比较该表中的两个指标,每个玩家代表图中的一个点。我有以下代码: nbaplot <- ggplot(nba, aes(x= MIN, y= PTS, colour="green", label=Name)) + geom_point() 这给了我以下内容: 我想要的是圆点旁边的玩家名称标签。我认为ggplot美学中的标签功能可以为我做到这一点,但事实并非如此。 我还尝试了text()function和textxy()from中的函数library(calibrate),但它们都似乎不适用于ggplot。 如何在这些点上添加名称标签?
178 r  plot  ggplot2  labeling  ggrepel 

1
R中GIS地图的自动标签放置
我正在R中使用sf软件包(和相关软件包)读取shapefile,并ggplot2(和朋友)进行绘图,从而制作GIS地图。效果很好,但是我找不到方法(自动/编程)为河流和道路等要素创建标签位置。这些特征通常是线串,形状不规则。参见所附图片,例如来自wikimedia的图片。 该ggrepel软件包可以自动标记点,效果很好,但是对于不是离散纬度/经度点的其他地理特征来说,这没有多大意义。 我可以想象通过在每个功能上单独放置单独的文本标签来做到这一点,但是我正在寻找更自动化的方法(如果可能)。我意识到这样的自动化不是一个小问题,但是它已经得到了解决(ArcGIS显然可以通过名为maplex的扩展来做到这一点,但是我无权使用该软件,因此我想继续R(如果可能)。 有人知道这样做的方法吗? MWE在这里: #MWE Linestring labeling library(tidyverse) library(sf) library(ggrepel) set.seed(120) #pick a county from the built-in North Carolina dataset BuncombeCounty <- st_read(system.file("shapes/", package="maptools"), "sids") %>% filter(NAME == "Buncombe") #pick 4 random points in that county pts_sf <- data.frame( x = seq(-82.3, -82.7, by=-0.1) %>% sample(4), y = seq(35.5, …
9 r  gis  spatial  sf  ggrepel 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.