如何更改已经保存了的Plot的颜色?
mathematica吧
全部回复
仅看楼主
level 6
泥萌都👀 楼主
假设我已经有个Plot结果存为a了,
a = Plot[Sin[x], {x, 0, 6 Pi}]
如何只对a操作,做到把曲线换个颜色再画出来?
谢谢!
2019年11月02日 15点11分 1
吧务
level 15
代码式的改法的话,比较新的版本应该是
a /. RGBColor[__] -> Red
不过刚看了下,版本9下面着色用的是Hue,则应该是:
a /. Hue[__] -> Red
当然了,如果有多根线啥的还得再改改,但原理大致如此。此外Plot函数的输出各版之间常有悄悄改变,所以比较保险的做法是换之前先检查一下内部结构。(图不复杂时按Ctrl+Shift+I检查即可,或者在Stackexchange搜shortinputform。)
最后,线的颜色其实可以交互式地改。直接在线上双击选中,右键,绘图工具,边线,就能改了。
2019年11月02日 15点11分 2
试了,工作了,谢谢!
2019年11月02日 15点11分
level 8
右键-直接可以改
2019年11月02日 18点11分 3
level 1
那相对应的图例的颜色怎么改呀
2022年08月06日 03点08分 4
交互式的那招是不行了,但是2楼的替换方法是没问题的。随便来个例子: a = Plot[{Sin[x], Cos[x]}, {x, 0, 6 Pi}, PlotLegends -> Automatic]; colorlst = Cases[a, _RGBColor, Infinity] // Union; a /. Thread[colorlst -> {Red, Green}]
2022年08月06日 07点08分
此外,默认的配色方案是97号方案,所以相应的颜色也可以用 ColorData[97, "ColorList"] 搞出来。
2022年08月06日 07点08分
@xzcyr 很重要的信息……老早就想问默认的配色方案是什么了
2022年08月08日 04点08分
@hjq447285628 顺便,版本9及以前的默认方案是1号方案。
2022年09月02日 17点09分
1