# The scale-change of "cgrad" is invalidated when colorschemes are jointed

**URL:** <https://discourse.julialang.org/t/the-scale-change-of-cgrad-is-invalidated-when-colorschemes-are-jointed/100966>\
**Category:** General Usage\
**Tags:** question, colors, plot, colorbar\
**Created:** [June 29, 2023, 7:22am UTC](https://discourse.julialang.org/t/the-scale-change-of-cgrad-is-invalidated-when-colorschemes-are-jointed/100966 "2023-06-29T07:22:23Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Fluorite-Erbite](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fluorite-erbite/32/214758_2.png) [@Fluorite-Erbite](https://discourse.julialang.org/u/Fluorite-Erbite)\
**Post date:** [June 29, 2023, 7:22am UTC](https://discourse.julialang.org/t/the-scale-change-of-cgrad-is-invalidated-when-colorschemes-are-jointed/100966/1 "2023-06-29T07:22:24Z")

</div>

Julia 1.9.0 downloaded from the official

(Sorry for my poor English)

I want to join 2 colorschemes, before which each scale is change (:log).  
Example,

```julia
cs1 = reverse( cgrad( palette( [:red, :orange, :yellow, :lawngreen], 100 ), scale=:log ) )
cs2 = cgrad( palette( [:navyblue, :deepskybkue2, :lime, :lawngreen], 100 ), scale=:log )

cs_com = zeros(RGBA{Float64}, 200)
cs_com[1:100] .= cs1
cs_com[101:end] .= cs2

```

But, outputted colorscheme is invalidated scale-change (`scale=:log`), it means that, `cs_com` is JUST equal to  
`palette( [:navyblue, :deepskybkue2, :lime, :lawngreen, :lawngreen, :yellow, :orange, :red], 200 )`

Why? and, please let me know how to combine colorschemes.  
(I posted the same quastion on Github.)

---

<div class="post-metadata">

**Author:** ![rafael.guerra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafael.guerra/32/216610_2.png) [@rafael.guerra](https://discourse.julialang.org/u/rafael.guerra)\
**Post date:** [June 29, 2023, 4:53pm UTC](https://discourse.julialang.org/t/the-scale-change-of-cgrad-is-invalidated-when-colorschemes-are-jointed/100966/2 "2023-06-29T16:53:05Z")

</div>

You could try:

```julia
cs12 = [get(cs1, range(0,1,100)); get(cs2, range(0,1,100))]

```

> **Here is a MWE**
>
> ```julia
> using Plots
> 
> cs1 = reverse(cgrad( palette([:red,:orange,:yellow,:lawngreen], 100), scale=:log))
> cs2 = cgrad( palette([:navyblue,:DeepSkyBlue2,:lime,:lawngreen], 100), scale=:log)
> cs12 = [get(cs1, range(0, 1, 100)); get(cs2, range(0, 1, 100))]
> M = sin.((0:999)' .* (0:999) / 20000)
> heatmap(M, color=cs12)
> 
> ```

![Plots_combine_palettes](https://global.discourse-cdn.com/julialang/original/3X/f/4/f4f99b539b71258a5b1539d322d5b353bd519701.png)

---

<div class="post-metadata">

**Author:** ![Fluorite-Erbite](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fluorite-erbite/32/214758_2.png) [@Fluorite-Erbite](https://discourse.julialang.org/u/Fluorite-Erbite)\
**Post date:** [June 30, 2023, 4:33am UTC](https://discourse.julialang.org/t/the-scale-change-of-cgrad-is-invalidated-when-colorschemes-are-jointed/100966/3 "2023-06-30T04:33:09Z")

</div>

I can get Color-Schemes I want !  
Thank you for your advice!
