楼主: ewanvg
3042 9

[问答] 请问ggplot2中作图如何用数据框列名映射到颜色? [推广有奖]

  • 0关注
  • 3粉丝

已卖:1422份资源

硕士生

1%

还不是VIP/贵宾

-

威望
0
论坛币
12962 个
通用积分
152.3492
学术水平
3 点
热心指数
10 点
信用等级
1 点
经验
2415 点
帖子
88
精华
0
在线时间
145 小时
注册时间
2014-8-22
最后登录
2025-10-25

楼主
ewanvg 发表于 2018-6-7 15:45:14 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请问ggplot2中作图如何用数据框列名映射到颜色?大家有什么解决的方法
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:解决的方法

沙发
ewanvg 发表于 2018-6-7 15:56:46
网上没有找到方法,不知道大家有没有解决办法,非常感谢!
按道理这应该是一个常用的功能,ggplot2应该有,但我就是没找到方法

藤椅
allain 在职认证  发表于 2018-6-7 16:03:46
把数据和你做的图贴上来

板凳
ewanvg 发表于 2018-6-7 16:41:40
allain 发表于 2018-6-7 16:03
把数据和你做的图贴上来
这是数据,就是第一列当x和其它列选一个当y以此循环 不同列当做y画图的颜色最好是自动给出,如果颜色能映射到列名就很好
temperature eos_sym1dens1 ek_sym1dens1 utwo_sym1dens1 uthr_sym1dens1 umom_sym1dens1 upauli_sym1dens1 usym_sym1dens1
0 0.533615 27.867025 -208.627205 158.736395 11.68419 0.000275 10.872945
1 0.61349 27.917715 -208.570265 158.686355 11.69918 0.00028 10.8803
2 0.348335 27.74188 -208.627205 158.736395 11.624055 0.000275 10.872945
3 1.417505 28.50137 -210.03409 160.032415 11.880065 3e-04 11.03739
4 0.067165 27.556435 -209.26393 159.317175 11.59381 3e-04 10.863355
5 0.67615 28.045035 -209.26393 159.317175 11.71421 3e-04 10.863355
6 1.47337 28.59045 -210.459875 160.434935 11.89137 0.000305 11.016175
7 2.31997 29.34658 -208.974495 159.08318 11.97135 0.00025 10.89317
8 3.196755 30.00254 -209.787355 159.847465 12.14004 0.00028 10.993885
9 3.59647 30.537685 -207.85097 158.04817 12.067815 0.000245 10.793525
10 4.433215 31.17358 -208.658855 158.79653 12.27564 0.000275 10.84602

报纸
ewanvg 发表于 2018-6-7 17:08:27
allain 发表于 2018-6-7 16:03
把数据和你做的图贴上来
没有在ggplot2包中找到颜色映射到数据框列名的操作方法,尝试过直接aes(...,colour=conames())的方法没有成功,我对ggpot2不懂的很多不知道有没有解决办法???

地板
cheetahfly 在职认证  发表于 2018-6-7 17:21:48
这不是ggplot的问题,是你要对数据进行变形的问题,用tidyr::gather()将列名变为一个变量。

7
allain 在职认证  发表于 2018-6-7 17:45:14
ewanvg 发表于 2018-6-7 17:08
没有在ggplot2包中找到颜色映射到数据框列名的操作方法,尝试过直接aes(...,colour=conames())的方法没有成 ...
用tidyverse包里的gather函数,把数据转换为“长数据”,
然后再作图,

8
ewanvg 发表于 2018-6-7 18:18:24
cheetahfly 发表于 2018-6-7 17:21
这不是ggplot的问题,是你要对数据进行变形的问题,用tidyr::gather()将列名变为一个变量。
非常感谢,您能否给个例子,有没有链接?

9
jeffyangsir 在职认证  发表于 2018-6-7 20:10:05

10
ewanvg 发表于 2018-6-7 21:14:27
还是摸索成功了,谢谢各位1

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-13 08:41