2017-03-08 14 views
1

Rでプロットし始めたばかりで、うまくいきましたが、2つのことを行う方法を理解できません。スケーリングポイントとplot_ly Rパッケージを使用した色の選択

1)自分の分割の色を選択する必要があります。現在、私はテリトリーで分割しており、陰謀的には私が各地域をどのような色にしたいのかをコード化することはできません。 2)マーカが非常に大きくなるようにポイントを拡大する必要もあります。私は各行のサイズを作成しようとしましたが、size =〜sizeとsizes = c(2,100)の設定になっていましたが、これはうまくいきませんでした。

これを行う方法に関するアドバイスはありますか?私はプロットRリファレンスガイドを読んでみましたが、plotly_mapboxでこれを行う方法を理解することはできません。私は大きさや色の試行をせずにコードを貼り付けました。

p <- df %>% 
    plot_mapbox(lat = ~lat, lon = ~lon, 
       split = ~Territory, 
       mode = 'scattermapbox', 
       text = df$text, 
       hoverinfo = "text" 
      ) %>% 
    layout(title = 'Ship to Zip Codes', 
     font = list(color='white'), 
     plot_bgcolor = '#191A1A', 
     paper_bgcolor = '#191A1A', 
     mapbox = list(style = 'dark'), 
     legend = list(orientation = 'h', 
        font = list(size = 8)), 
     margin = list(l = 25, r = 25, 
         b = 25, t = 25, 
         pad = 2)) 

答えて

1

marker = list(size = 2)でマーカーサイズを設定できます。

色を設定するのはもっと難しく、私が知る限りplot_mapboxで直接行うことはできません。


しかし、私たちは、その後

cols <- c("red", "blue", "black", "green", "orange", "cyan", "gray50") 

当社独自の色のリストを定義し、最終的にplot_geo

plot_geo(df) %>% 
    add_markers(
    x = ~reclong, y = ~reclat, color = ~colors, colors = cols, marker = list(size = 2)) 
を経由して、すべてをプロットし、当社のデータフレームに

df$colors <- factor(df$class, levels = unique(df$class)) 

を新しい列を割り当てることができます


Plotlyのスキャッタマップでカスタムカラーを取得するコード全体。

library(plotly) 

df = read.csv('https://raw.githubusercontent.com/bcdunbar/datasets/master/meteorites_subset.csv') 

df$colors <- factor(df$class, levels = unique(df$class)) 
cols <- c("red", "blue", "black", "green", "orange", "cyan", "gray50") 

plot_geo(df) %>% 
add_markers(x = ~reclong, 
      y = ~reclat, 
      color = ~df$colors, 
      colors = cols, 
      marker = list(size = 2)) 

enter image description here

関連する問題