Compare commits
78 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a7a1f2e2a | ||
|
|
18b11a71e3 | ||
|
|
9e34ed0383 | ||
|
|
561839a029 | ||
|
|
88f2541288 | ||
|
|
92611ea3b4 | ||
|
|
3e1bad0971 | ||
|
|
a13d4d8554 | ||
|
|
b76dc2d7a3 | ||
|
|
137d339e0b | ||
|
|
e06143ce33 | ||
|
|
06220420a3 | ||
|
|
d8da3c60d9 | ||
|
|
9e92ada61a | ||
|
|
cebca5174b | ||
|
|
e3e86aa6cd | ||
|
|
add8364bbd | ||
|
|
09abf2e40f | ||
|
|
182d4683e6 | ||
|
|
a681f3e307 | ||
|
|
1c59b19343 | ||
|
|
6773666549 | ||
|
|
42bf100ad3 | ||
|
|
e826c87114 | ||
|
|
616d72476a | ||
|
|
4f9a708f66 | ||
|
|
4b73b8b5d5 | ||
|
|
99ad317590 | ||
|
|
90975d95f8 | ||
|
|
f0a1ef8a0c | ||
|
|
49aee2d204 | ||
|
|
02351a45b4 | ||
|
|
e691a42b90 | ||
|
|
8a584ceab4 | ||
|
|
cc1bd28ccd | ||
|
|
4446a63135 | ||
|
|
412a8993ad | ||
|
|
d9fb8b8ef3 | ||
|
|
37eb1db8d2 | ||
|
|
dc3e3176f2 | ||
|
|
2cd3331f30 | ||
|
|
db932d62f6 | ||
|
|
caf4d1857c | ||
|
|
bbde8ad1b1 | ||
|
|
d3449331c9 | ||
|
|
eb746d1641 | ||
|
|
a33c0205b2 | ||
|
|
65ab68c3b5 | ||
|
|
0f4a0c7154 | ||
|
|
02d08beb1e | ||
|
|
d3817796a4 | ||
|
|
dbe81dabd5 | ||
|
|
5c2cc926a6 | ||
|
|
bcc66caf7d | ||
|
|
0686461686 | ||
|
|
5c4fbc5e1a | ||
|
|
5872bdefc4 | ||
|
|
a4849da775 | ||
|
|
afe24f46bc | ||
|
|
79638b7789 | ||
|
|
e82e95c8e3 | ||
|
|
843226bfe1 | ||
|
|
317bfc918a | ||
|
|
4665f5caab | ||
|
|
1520705fa7 | ||
|
|
b60cf3cc53 | ||
|
|
092fb67017 | ||
|
|
4ebadb7612 | ||
|
|
fcd3246e4a | ||
|
|
5f858fe6f6 | ||
|
|
8a4aea1fc7 | ||
|
|
3483799cfc | ||
|
|
a5f52be5c2 | ||
|
|
2b7e304c7e | ||
|
|
6c77801835 | ||
|
|
b34f8b87c1 | ||
|
|
5130da5a40 | ||
|
|
95fd48ed9b |
19
.github/workflows/SnoopCompile.yml
vendored
19
.github/workflows/SnoopCompile.yml
vendored
@ -16,15 +16,17 @@ jobs:
|
|||||||
if: "!contains(github.event.head_commit.message, '[skip ci]')"
|
if: "!contains(github.event.head_commit.message, '[skip ci]')"
|
||||||
env:
|
env:
|
||||||
GKS_ENCODING: "utf8"
|
GKS_ENCODING: "utf8"
|
||||||
GKSwstype: "100"
|
GKSwstype: "nul"
|
||||||
PLOTS_TEST: "true"
|
PLOTS_TEST: "true"
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{matrix.os}}
|
||||||
|
continue-on-error: ${{ matrix.version == '~1.8.0-0' }}
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
version: # NOTE: the versions below should match those in your botconfig
|
version: # NOTE: the versions below should match those in your botconfig
|
||||||
- '1.6' # ⎤
|
- '1.6' # ⎤
|
||||||
- '1.7' # |
|
- '1.7' # |
|
||||||
|
- '~1.8.0-0' # |
|
||||||
# - 'nightly' # ⎦ <<< keep these versions in sync with deps/SnoopCompile/snoop_bot_config.jl
|
# - 'nightly' # ⎦ <<< keep these versions in sync with deps/SnoopCompile/snoop_bot_config.jl
|
||||||
# ^^^^^^^^^ for 'nightly', see github.com/JuliaPlots/Plots.jl/issues/4079
|
# ^^^^^^^^^ for 'nightly', see github.com/JuliaPlots/Plots.jl/issues/4079
|
||||||
os: # NOTE: should match the os setting of your botconfig
|
os: # NOTE: should match the os setting of your botconfig
|
||||||
@ -36,10 +38,20 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: julia-actions/setup-julia@latest
|
- uses: julia-actions/setup-julia@latest
|
||||||
with:
|
with:
|
||||||
version: ${{ matrix.version }}
|
version: ${{matrix.version}}
|
||||||
|
|
||||||
|
- name: Set Swap Space
|
||||||
|
uses: pierotofy/set-swap-space@master
|
||||||
|
with:
|
||||||
|
swap-size-gb: 10 # required (not enough memory on github actions virtual machine)
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
|
cat /proc/cpuinfo
|
||||||
|
cat /proc/meminfo
|
||||||
|
cat /proc/swaps
|
||||||
|
free
|
||||||
|
df -h
|
||||||
julia --project -e 'using Pkg; Pkg.instantiate()'
|
julia --project -e 'using Pkg; Pkg.instantiate()'
|
||||||
julia -e 'using Pkg; Pkg.add(PackageSpec(name="CompileBot", version="1")); Pkg.develop(PackageSpec(; path=pwd())); using CompileBot; CompileBot.addtestdep()'
|
julia -e 'using Pkg; Pkg.add(PackageSpec(name="CompileBot", version="1")); Pkg.develop(PackageSpec(; path=pwd())); using CompileBot; CompileBot.addtestdep()'
|
||||||
|
|
||||||
@ -88,7 +100,6 @@ jobs:
|
|||||||
no changelog
|
no changelog
|
||||||
branch: "Test_SnoopCompile_AutoPR_${{ github.ref }}"
|
branch: "Test_SnoopCompile_AutoPR_${{ github.ref }}"
|
||||||
|
|
||||||
|
|
||||||
Skip:
|
Skip:
|
||||||
if: "contains(github.event.head_commit.message, '[skip ci]')"
|
if: "contains(github.event.head_commit.message, '[skip ci]')"
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
17
.github/workflows/ci.yml
vendored
17
.github/workflows/ci.yml
vendored
@ -15,7 +15,7 @@ jobs:
|
|||||||
if: "!contains(github.event.head_commit.message, '[skip ci]')"
|
if: "!contains(github.event.head_commit.message, '[skip ci]')"
|
||||||
env:
|
env:
|
||||||
GKS_ENCODING: "utf8"
|
GKS_ENCODING: "utf8"
|
||||||
GKSwstype: "100"
|
GKSwstype: "nul"
|
||||||
|
|
||||||
name: Julia ${{ matrix.version }} - ${{ matrix.os }}
|
name: Julia ${{ matrix.version }} - ${{ matrix.os }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
@ -55,19 +55,16 @@ jobs:
|
|||||||
${{ runner.os }}-test-
|
${{ runner.os }}-test-
|
||||||
${{ runner.os }}-
|
${{ runner.os }}-
|
||||||
|
|
||||||
## maybe required if we ever want to run graphical tests for plotly
|
|
||||||
# OS Dependencies
|
|
||||||
# - name: Ubuntu OS dependencies
|
|
||||||
# if: startsWith(matrix.os,'ubuntu')
|
|
||||||
# run: |
|
|
||||||
# ./test/install_wkhtmltoimage.sh
|
|
||||||
|
|
||||||
# TESTCMD
|
# TESTCMD
|
||||||
- name: Default TESTCMD
|
- name: Default TESTCMD
|
||||||
run: echo "TESTCMD=julia" >> $GITHUB_ENV
|
run: echo "TESTCMD=julia" >> $GITHUB_ENV
|
||||||
- name: Ubuntu TESTCMD
|
- name: Ubuntu TESTCMD
|
||||||
if: startsWith(matrix.os,'ubuntu')
|
if: startsWith(matrix.os,'ubuntu')
|
||||||
run: echo "TESTCMD=xvfb-run --auto-servernum julia" >> $GITHUB_ENV
|
run: |
|
||||||
|
echo "TESTCMD=xvfb-run --auto-servernum julia" >> $GITHUB_ENV
|
||||||
|
sudo apt-get -y update
|
||||||
|
sudo apt-get -y install gnuplot poppler-utils texlive-{latex-base,latex-extra,luatex}
|
||||||
|
sudo fc-cache -vr
|
||||||
|
|
||||||
# Julia Dependencies
|
# Julia Dependencies
|
||||||
- name: Install Julia dependencies
|
- name: Install Julia dependencies
|
||||||
@ -82,7 +79,9 @@ jobs:
|
|||||||
|
|
||||||
# Codecov
|
# Codecov
|
||||||
- uses: julia-actions/julia-processcoverage@v1
|
- uses: julia-actions/julia-processcoverage@v1
|
||||||
|
if: startsWith(matrix.os,'ubuntu')
|
||||||
- uses: codecov/codecov-action@v2
|
- uses: codecov/codecov-action@v2
|
||||||
|
if: startsWith(matrix.os,'ubuntu')
|
||||||
with:
|
with:
|
||||||
file: lcov.info
|
file: lcov.info
|
||||||
|
|
||||||
|
|||||||
47
.github/workflows/docs.yml
vendored
47
.github/workflows/docs.yml
vendored
@ -9,7 +9,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
Build_docs:
|
Build_docs:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
@ -21,41 +21,14 @@ jobs:
|
|||||||
cache-name: cache-artifacts
|
cache-name: cache-artifacts
|
||||||
with:
|
with:
|
||||||
path: ~/.julia/artifacts
|
path: ~/.julia/artifacts
|
||||||
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
|
key: ${{runner.os}}-test-${{env.cache-name}}-${{hashFiles('**/Project.toml')}}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-test-${{ env.cache-name }}-
|
${{runner.os}}-test-${{env.cache-name}}-
|
||||||
${{ runner.os }}-test-
|
${{runner.os}}-test-
|
||||||
${{ runner.os }}-
|
${{runner.os}}-
|
||||||
- name: Install dependencies
|
- name: Build documentation
|
||||||
run: |
|
env:
|
||||||
sudo apt-get update -y
|
|
||||||
sudo apt-get install -y qt5-default \
|
|
||||||
ttf-mscorefonts-installer \
|
|
||||||
poppler-utils \
|
|
||||||
pdf2svg \
|
|
||||||
texlive-latex-base \
|
|
||||||
texlive-binaries \
|
|
||||||
texlive-pictures \
|
|
||||||
texlive-latex-extra \
|
|
||||||
texlive-luatex \
|
|
||||||
ghostscript-x \
|
|
||||||
libgconf2-4 \
|
|
||||||
gnuplot
|
|
||||||
sudo fc-cache -vr
|
|
||||||
|
|
||||||
- name: build documentation
|
|
||||||
env:
|
|
||||||
PYTHON: ""
|
PYTHON: ""
|
||||||
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
|
DOCUMENTER_KEY: ${{secrets.DOCUMENTER_KEY}}
|
||||||
run: |
|
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
||||||
echo $GITHUB_REF
|
run: bash docs/ci_build.sh
|
||||||
export JULIA_DEBUG=Documenter
|
|
||||||
export PLOTDOCS_ANSICOLOR=true
|
|
||||||
export GKSwstype=nul # Plots.jl/issues/3664
|
|
||||||
export UP_DEBUG_IO=$(mktemp)
|
|
||||||
xvfb-run julia --color=yes --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.add(PackageSpec(name="Plots", rev=split(ENV["GITHUB_REF"], "/", limit=3)[3])); Pkg.instantiate()'
|
|
||||||
# xvfb-run julia --color=yes --project=docs/ -e 'using Pkg; pkg"add Documenter#master"'
|
|
||||||
xvfb-run julia --color=yes --project=docs/ -e 'using Pkg; pkg"st -m"'
|
|
||||||
xvfb-run julia --color=yes --project=docs/ -e 'withenv("GITHUB_REPOSITORY" => "JuliaPlots/PlotDocs.jl") do; include("docs/make.jl"); end'
|
|
||||||
cat $UP_DEBUG_IO | sed 's,\x1B,ESC,g'
|
|
||||||
rm $UP_DEBUG_IO
|
|
||||||
|
|||||||
67
.github/workflows/format_check.yml
vendored
67
.github/workflows/format_check.yml
vendored
@ -1,37 +1,54 @@
|
|||||||
name: format
|
name: format
|
||||||
|
|
||||||
on:
|
on:
|
||||||
|
pull_request:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- 'master'
|
- 'master'
|
||||||
tags: '*'
|
|
||||||
pull_request:
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check:
|
code-style:
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
julia-version: ['1']
|
|
||||||
julia-arch: [x64]
|
|
||||||
os: [ubuntu-latest]
|
|
||||||
steps:
|
steps:
|
||||||
- uses: julia-actions/setup-julia@latest
|
|
||||||
with:
|
|
||||||
version: ${{ matrix.julia-version }}
|
|
||||||
|
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Install JuliaFormatter and format
|
- uses: julia-actions/setup-julia@v1
|
||||||
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
julia -e 'using Pkg; Pkg.add(PackageSpec(name="JuliaFormatter"))'
|
using Pkg
|
||||||
julia -e 'using JuliaFormatter; format(["src", "test"], verbose=true)'
|
Pkg.add([
|
||||||
- name: Format check
|
PackageSpec("JuliaFormatter"),
|
||||||
|
PackageSpec(url = "https://github.com/tkf/JuliaProjectFormatter.jl.git"),
|
||||||
|
])
|
||||||
|
shell: julia --color=yes {0}
|
||||||
|
|
||||||
|
- name: Format Julia files
|
||||||
run: |
|
run: |
|
||||||
julia -e '
|
using JuliaFormatter
|
||||||
out = Cmd(`git diff --name-only`) |> read |> String
|
format(["src", "test"])
|
||||||
if out == ""
|
shell: julia --color=yes --compile=min -O0 {0}
|
||||||
exit(0)
|
- name: suggester / JuliaFormatter
|
||||||
else
|
uses: reviewdog/action-suggester@v1
|
||||||
@error "These files have not been formatted:\n$out"
|
with:
|
||||||
exit(1)
|
tool_name: JuliaFormatter
|
||||||
end'
|
fail_on_error: true
|
||||||
|
|
||||||
|
# reviewdog/action-suggester not using `cleanup` flag?
|
||||||
|
- name: Cleanup
|
||||||
|
if: success() || failure()
|
||||||
|
run: |
|
||||||
|
git checkout -- .
|
||||||
|
git clean --force
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Format Julia project files
|
||||||
|
if: success() || failure()
|
||||||
|
run: |
|
||||||
|
using JuliaProjectFormatter
|
||||||
|
format_projects()
|
||||||
|
shell: julia --color=yes --compile=min -O0 {0}
|
||||||
|
- name: suggester / JuliaProjectFormatter
|
||||||
|
if: success() || failure()
|
||||||
|
uses: reviewdog/action-suggester@v1
|
||||||
|
with:
|
||||||
|
tool_name: JuliaProjectFormatter
|
||||||
|
fail_on_error: true
|
||||||
|
|||||||
12
.zenodo.json
12
.zenodo.json
@ -3,7 +3,7 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"creators": [
|
"creators": [
|
||||||
{
|
{
|
||||||
"affiliation": "Elemental Cognition",
|
"affiliation": "Headlands Technologies",
|
||||||
"name": "Tom Breloff"
|
"name": "Tom Breloff"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@ -142,6 +142,8 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Anshul Singhvi",
|
"name": "Anshul Singhvi",
|
||||||
|
"affiliation": "Columbia University",
|
||||||
|
"orcid": "0000-0001-6055-1291",
|
||||||
"type": "Other"
|
"type": "Other"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -706,6 +708,14 @@
|
|||||||
{
|
{
|
||||||
"name": "Tom Gillam",
|
"name": "Tom Gillam",
|
||||||
"type": "Other"
|
"type": "Other"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Steve Leung",
|
||||||
|
"type": "Other"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Xu Zhi-Yuan",
|
||||||
|
"type": "Other"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"upload_type": "software"
|
"upload_type": "software"
|
||||||
|
|||||||
17
Project.toml
17
Project.toml
@ -1,7 +1,7 @@
|
|||||||
name = "Plots"
|
name = "Plots"
|
||||||
uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
|
uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
|
||||||
author = ["Tom Breloff (@tbreloff)"]
|
author = ["Tom Breloff (@tbreloff)"]
|
||||||
version = "1.25.11"
|
version = "1.29.0"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
Base64 = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
|
Base64 = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
|
||||||
@ -17,6 +17,7 @@ Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"
|
|||||||
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
|
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
|
||||||
Measures = "442fdcdd-2543-5da2-b0f3-8c86c306513e"
|
Measures = "442fdcdd-2543-5da2-b0f3-8c86c306513e"
|
||||||
NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3"
|
NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3"
|
||||||
|
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
|
||||||
PlotThemes = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a"
|
PlotThemes = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a"
|
||||||
PlotUtils = "995b91a9-d308-5afd-9ec6-746e21dbc043"
|
PlotUtils = "995b91a9-d308-5afd-9ec6-746e21dbc043"
|
||||||
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
|
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
|
||||||
@ -45,8 +46,12 @@ JSON = "0.21, 1"
|
|||||||
Latexify = "0.14 - 0.15"
|
Latexify = "0.14 - 0.15"
|
||||||
Measures = "0.3"
|
Measures = "0.3"
|
||||||
NaNMath = "0.3, 1"
|
NaNMath = "0.3, 1"
|
||||||
PlotThemes = "2"
|
PGFPlotsX = "1"
|
||||||
|
PlotThemes = "2, 3"
|
||||||
PlotUtils = "1"
|
PlotUtils = "1"
|
||||||
|
PlotlyBase = "0.7"
|
||||||
|
PlotlyJS = "0.18"
|
||||||
|
PyPlot = "2"
|
||||||
RecipesBase = "1.2"
|
RecipesBase = "1.2"
|
||||||
RecipesPipeline = "0.5"
|
RecipesPipeline = "0.5"
|
||||||
Reexport = "0.2, 1.0"
|
Reexport = "0.2, 1.0"
|
||||||
@ -55,7 +60,7 @@ Scratch = "1"
|
|||||||
Showoff = "0.3.1, 1.0"
|
Showoff = "0.3.1, 1.0"
|
||||||
StatsBase = "0.32 - 0.33"
|
StatsBase = "0.32 - 0.33"
|
||||||
UnicodeFun = "0.4"
|
UnicodeFun = "0.4"
|
||||||
UnicodePlots = "2.8"
|
UnicodePlots = "2.10"
|
||||||
Unzip = "0.1"
|
Unzip = "0.1"
|
||||||
julia = "1.6"
|
julia = "1.6"
|
||||||
|
|
||||||
@ -63,14 +68,18 @@ julia = "1.6"
|
|||||||
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
|
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
|
||||||
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
|
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
|
||||||
FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549"
|
FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549"
|
||||||
|
Gaston = "4b11ee91-296f-5714-9832-002c20994614"
|
||||||
Gtk = "4c0ca9eb-093a-5379-98c5-f87ac0bbbf44"
|
Gtk = "4c0ca9eb-093a-5379-98c5-f87ac0bbbf44"
|
||||||
HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f"
|
HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f"
|
||||||
ImageMagick = "6218d12a-5da1-5696-b52f-db25d2ecc6d1"
|
ImageMagick = "6218d12a-5da1-5696-b52f-db25d2ecc6d1"
|
||||||
Images = "916415d5-f1e6-5110-898d-aaa5f9f070e0"
|
Images = "916415d5-f1e6-5110-898d-aaa5f9f070e0"
|
||||||
|
InspectDR = "d0351b0e-4b05-5898-87b3-e2a8edfddd1d"
|
||||||
LibGit2 = "76f85450-5226-5b5a-8eaa-529ad045b433"
|
LibGit2 = "76f85450-5226-5b5a-8eaa-529ad045b433"
|
||||||
OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
|
OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
|
||||||
PGFPlotsX = "8314cec4-20b6-5062-9cdb-752b83310925"
|
PGFPlotsX = "8314cec4-20b6-5062-9cdb-752b83310925"
|
||||||
|
PlotlyBase = "a03496cd-edff-5a9b-9e67-9cda94a718b5"
|
||||||
PlotlyJS = "f0f68f2c-4968-5e81-91da-67840de0976a"
|
PlotlyJS = "f0f68f2c-4968-5e81-91da-67840de0976a"
|
||||||
|
PyPlot = "d330b81b-6aea-500a-939a-2ce795aea3ee"
|
||||||
RDatasets = "ce6b1742-4840-55fa-b093-852dadbb1d8b"
|
RDatasets = "ce6b1742-4840-55fa-b093-852dadbb1d8b"
|
||||||
StableRNGs = "860ef19b-820b-49d6-a774-d7a799459cd3"
|
StableRNGs = "860ef19b-820b-49d6-a774-d7a799459cd3"
|
||||||
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
|
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
|
||||||
@ -81,4 +90,4 @@ UnicodePlots = "b8865327-cd53-5732-bb35-84acbb429228"
|
|||||||
VisualRegressionTests = "34922c18-7c2a-561c-bac1-01e79b2c4c92"
|
VisualRegressionTests = "34922c18-7c2a-561c-bac1-01e79b2c4c92"
|
||||||
|
|
||||||
[targets]
|
[targets]
|
||||||
test = ["Colors", "Distributions", "FileIO", "Gtk", "ImageMagick", "Images", "LibGit2", "OffsetArrays", "PGFPlotsX", "PlotlyJS", "HDF5", "RDatasets", "StableRNGs", "StaticArrays", "StatsPlots", "Test", "TestImages", "UnicodePlots", "VisualRegressionTests"]
|
test = ["Colors", "Distributions", "FileIO", "Gaston", "Gtk", "ImageMagick", "Images", "InspectDR", "LibGit2", "OffsetArrays", "PGFPlotsX", "PlotlyJS", "PlotlyBase", "PyPlot", "HDF5", "RDatasets", "StableRNGs", "StaticArrays", "StatsPlots", "Test", "TestImages", "UnicodePlots", "VisualRegressionTests"]
|
||||||
|
|||||||
104
deps/SnoopCompile/precompile/1.6/precompile_Plots.jl
vendored
104
deps/SnoopCompile/precompile/1.6/precompile_Plots.jl
vendored
@ -71,20 +71,24 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Tuple{Int64, Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Tuple{Int64, Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(areaplot)),Any,typeof(areaplot),Any,Vararg{Any, N} where N})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:foreground_color_grid, :grid, :gridalpha, :gridstyle, :gridlinewidth), Tuple{RGBA{Float64}, Bool, Float64, Symbol, Int64}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :flip, :minorgrid, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :flip, :minorgrid, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims), Tuple{Bool, Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims), Tuple{Bool, Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims, :flip), Tuple{Bool, Tuple{Float64, Float64}, Bool}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims, :flip), Tuple{Bool, Tuple{Float64, Float64}, Bool}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :guide), Tuple{Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :guide), Tuple{Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :mirror, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :mirror, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:gridlinewidth, :grid, :gridalpha, :gridstyle, :foreground_color_grid), Tuple{Int64, Bool, Float64, Symbol, RGBA{Float64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guidefonthalign, :guide_position, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guidefonthalign, :guide_position, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims, :flip, :ticks, :guide), Tuple{Tuple{Int64, Int64}, Bool, StepRange{Int64, Int64}, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims, :flip, :ticks, :guide), Tuple{Tuple{Int64, Int64}, Bool, StepRange{Int64, Int64}, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Int64, Float64}}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Int64, Float64}}},typeof(attr!),Axis})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Int64, Int64}}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:minorgrid, :scale, :guide), Tuple{Bool, Symbol, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:minorgrid, :scale, :guide), Tuple{Bool, Symbol, String}},typeof(attr!),Axis})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:ticks,), Tuple{Nothing}},typeof(attr!),Axis})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:ticks,), Tuple{UnitRange{Int64}}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:shape,), Tuple{Symbol}},typeof(default)})
|
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:shape,), Tuple{Symbol}},typeof(default)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:titlefont, :legendfontsize, :guidefont, :tickfont, :guide, :framestyle, :yminorgrid), Tuple{Tuple{Int64, String}, Int64, Tuple{Int64, Symbol}, Tuple{Int64, Symbol}, String, Symbol, Bool}},typeof(default)})
|
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:titlefont, :legendfontsize, :guidefont, :tickfont, :guide, :framestyle, :yminorgrid), Tuple{Tuple{Int64, String}, Int64, Tuple{Int64, Symbol}, Tuple{Int64, Symbol}, String, Symbol, Bool}},typeof(default)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(font)),NamedTuple{(:family, :pointsize, :halign, :valign, :rotation, :color), Tuple{String, Int64, Symbol, Symbol, Float64, RGBA{Float64}}},typeof(font)})
|
Base.precompile(Tuple{Core.kwftype(typeof(font)),NamedTuple{(:family, :pointsize, :halign, :valign, :rotation, :color), Tuple{String, Int64, Symbol, Symbol, Float64, RGBA{Float64}}},typeof(font)})
|
||||||
@ -94,6 +98,9 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:halign, :valign, :rotation), Tuple{Symbol, Symbol, Int64}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:rotation, :color), Tuple{Int64, RGBA{Float64}}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{GRBackend},Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{GRBackend},Vector{GeometryBasics.Point2{Float64}}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{GeometryBasics.Point2{Float64}}})
|
||||||
@ -115,13 +122,20 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),Plot{GRBackend},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),Plot{GRBackend},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),Plot{PlotlyBackend},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),Plot{PlotlyBackend},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:marker, :series_annotations, :seriestype), Tuple{Tuple{Int64, Float64, Symbol}, Vector{Any}, Symbol}},typeof(plot!),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:markersize, :c, :seriestype), Tuple{Int64, Symbol, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:markersize, :c, :seriestype), Tuple{Int64, Symbol, Symbol}},typeof(plot!),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:markersize, :c, :seriestype), Tuple{Int64, Symbol, Symbol}},typeof(plot!),Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Plot{GRBackend},Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Plot{GRBackend},Vector{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Vector{Int64},Vector{Float64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Plot{GRBackend},Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!),Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!),Plot{PlotlyBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!)})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!)})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:w,), Tuple{Int64}},typeof(plot!),Plot{GRBackend},Vector{Float64},Vector{Float64},Vararg{Any, N} where N})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:xgrid,), Tuple{Tuple{Symbol, Symbol, Int64, Symbol, Float64}}},typeof(plot!),Plot{GRBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:xgrid,), Tuple{Tuple{Symbol, Symbol, Int64, Symbol, Float64}}},typeof(plot!),Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!),Plot{PlotlyBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
||||||
@ -178,6 +192,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}}},typeof(plot),UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{Tuple{LinRange{Float64}, LinRange{Float64}}}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{Tuple{LinRange{Float64}, LinRange{Float64}}}},typeof(plot),UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{typeof(sqrt)}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{typeof(sqrt)}},typeof(plot),UnitRange{Int64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriescolor, :fillalpha), Tuple{Matrix{Symbol}, Matrix{Float64}}},typeof(plot),AreaPlot})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype, :markershape, :markersize, :color), Tuple{Matrix{Symbol}, Vector{Symbol}, Int64, Vector{Symbol}}},typeof(plot),Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype, :markershape, :markersize, :color), Tuple{Matrix{Symbol}, Vector{Symbol}, Int64, Vector{Symbol}}},typeof(plot),Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),Vector{DateTime},UnitRange{Int64},Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),Vector{DateTime},UnitRange{Int64},Matrix{Float64}})
|
||||||
@ -194,10 +209,12 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any, N} where N})
|
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any, N} where N})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(scatter!)),Any,typeof(scatter!),Any})
|
Base.precompile(Tuple{Core.kwftype(typeof(scatter!)),Any,typeof(scatter!),Any})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip, :disp), Tuple{Vector{Int64}, Bool}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Type{GridLayout},Int64,Vararg{Int64, N} where N})
|
Base.precompile(Tuple{Type{GridLayout},Int64,Vararg{Int64, N} where N})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},AbstractVector{OHLC}})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},AbstractVector{OHLC}})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},PortfolioComposition})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},PortfolioComposition})
|
||||||
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:barbins}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:barhist}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:barhist}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:bar}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:bar}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:bins2d}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:bins2d}},Any,Any,Any})
|
||||||
@ -215,7 +232,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Vector{ComplexF64}})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Vector{ComplexF64}})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.add_series!),Plot{GRBackend},DefaultsDict})
|
Base.precompile(Tuple{typeof(RecipesPipeline.add_series!),Plot{GRBackend},DefaultsDict})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.add_series!),Plot{PlotlyBackend},DefaultsDict})
|
Base.precompile(Tuple{typeof(RecipesPipeline.add_series!),Plot{PlotlyBackend},DefaultsDict})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.is_subplot_attribute),Plot{GRBackend},Symbol})
|
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.plot_setup!),Plot{GRBackend},Dict{Symbol, Any},Vector{Dict{Symbol, Any}}})
|
Base.precompile(Tuple{typeof(RecipesPipeline.plot_setup!),Plot{GRBackend},Dict{Symbol, Any},Vector{Dict{Symbol, Any}}})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.plot_setup!),Plot{PlotlyBackend},Dict{Symbol, Any},Vector{Dict{Symbol, Any}}})
|
Base.precompile(Tuple{typeof(RecipesPipeline.plot_setup!),Plot{PlotlyBackend},Dict{Symbol, Any},Vector{Dict{Symbol, Any}}})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.preprocess_attributes!),Plot{GRBackend},DefaultsDict})
|
Base.precompile(Tuple{typeof(RecipesPipeline.preprocess_attributes!),Plot{GRBackend},DefaultsDict})
|
||||||
@ -225,13 +241,17 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(RecipesPipeline.process_userrecipe!),Plot{PlotlyBackend},Vector{Dict{Symbol, Any}},Dict{Symbol, Any}})
|
Base.precompile(Tuple{typeof(RecipesPipeline.process_userrecipe!),Plot{PlotlyBackend},Vector{Dict{Symbol, Any}},Dict{Symbol, Any}})
|
||||||
Base.precompile(Tuple{typeof(RecipesPipeline.unzip),Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{typeof(RecipesPipeline.unzip),Vector{GeometryBasics.Point2{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(_bin_centers),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}})
|
Base.precompile(Tuple{typeof(_bin_centers),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}})
|
||||||
|
Base.precompile(Tuple{typeof(_bin_centers),Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Float64},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Float64},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Int64},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Int64},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Nothing},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Nothing},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{PlotUtils.ContinuousColorGradient},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{PlotUtils.ContinuousColorGradient},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Symbol},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Symbol},String})
|
||||||
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},Vector{Int64}})
|
Base.precompile(Tuple{typeof(_cycle),UnitRange{Int64},Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},StepRange{Int64, Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Int64},StepRange{Int64, Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Int64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_heatmap_edges),Vector{Float64},Bool,Bool})
|
Base.precompile(Tuple{typeof(_heatmap_edges),Vector{Float64},Bool,Bool})
|
||||||
@ -241,8 +261,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{GRBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{PlotlyBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(axis_limits),Subplot{GRBackend},Symbol,Bool,Bool})
|
Base.precompile(Tuple{typeof(axis_limits),Subplot{GRBackend},Symbol,Bool,Bool})
|
||||||
@ -252,6 +270,8 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
||||||
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
||||||
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64},Tuple{Int64, Float64}})
|
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64},Tuple{Int64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(default),Symbol,Bool})
|
||||||
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64},Vararg{Vector{Float64}, N} where N})
|
||||||
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(fakedata),Int64,Int64})
|
Base.precompile(Tuple{typeof(fakedata),Int64,Int64})
|
||||||
@ -259,6 +279,8 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Float64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Float64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Int64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Int64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(get_series_color),SubArray{Symbol, 1, Vector{Symbol}, Tuple{UnitRange{Int64}}, true},Subplot{GRBackend},Int64,Symbol})
|
Base.precompile(Tuple{typeof(get_series_color),SubArray{Symbol, 1, Vector{Symbol}, Tuple{UnitRange{Int64}}, true},Subplot{GRBackend},Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(get_series_color),Vector{Symbol},Subplot{GRBackend},Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(get_series_color),Vector{Symbol},Subplot{PlotlyBackend},Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(get_ticks),StepRange{Int64, Int64},Vector{Float64},Vector{Any},Tuple{Int64, Int64},Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(get_ticks),StepRange{Int64, Int64},Vector{Float64},Vector{Any},Tuple{Int64, Int64},Vararg{Any, N} where N})
|
||||||
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Float64, Float64},Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Float64, Float64},Vararg{Any, N} where N})
|
||||||
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Int64, Float64},Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Int64, Float64},Vararg{Any, N} where N})
|
||||||
@ -272,11 +294,17 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_draw_heatmap),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_heatmap),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Float64,Float64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Float64,Float64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Base.OneTo{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Vector{Int64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Float64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Float64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
@ -287,17 +315,20 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(gr_label_ticks_3d),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks_3d),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_polyline),Vector{Float64},Vector{Float64},Function})
|
||||||
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
||||||
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
||||||
|
Base.precompile(Tuple{typeof(gr_text_size),String})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(iter_segments),Vector{Int64},Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(ignorenan_minimum),Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :blank), Tuple{Symbol, Bool}}})
|
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :blank), Tuple{Symbol, Bool}}})
|
||||||
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :width, :height), Tuple{Symbol, Symbol, Float64}}})
|
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :width, :height), Tuple{Symbol, Symbol, Float64}}})
|
||||||
|
Base.precompile(Tuple{typeof(make_fillrange_side),UnitRange{Int64},LinRange{Float64}})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Function})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Function})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Float64},Symbol,Symbol})
|
||||||
@ -305,9 +336,12 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),StepRange{Int64, Int64},Tuple{Int64, Int64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),StepRange{Int64, Int64},Tuple{Int64, Int64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),UnitRange{Int64},Tuple{Float64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),UnitRange{Int64},Tuple{Float64, Float64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
||||||
|
Base.precompile(Tuple{typeof(plot!),Any})
|
||||||
|
Base.precompile(Tuple{typeof(plot!),Plot,Plot,Plot,Vararg{Plot, N} where N})
|
||||||
Base.precompile(Tuple{typeof(plot),Any,Any})
|
Base.precompile(Tuple{typeof(plot),Any,Any})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend},Vararg{Plot{GRBackend}, N} where N})
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend},Vararg{Plot{GRBackend}, N} where N})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend},Vararg{Plot{PlotlyBackend}, N} where N})
|
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend},Vararg{Plot{PlotlyBackend}, N} where N})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
||||||
Base.precompile(Tuple{typeof(processGridArg!),Dict{Symbol, Any},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(processGridArg!),Dict{Symbol, Any},Symbol,Symbol})
|
||||||
@ -316,7 +350,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Matrix{Symbol}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Matrix{Symbol}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Stroke})
|
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Symbol})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Symbol})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol}})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol}})
|
||||||
@ -327,9 +360,15 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},StepRange{Int64, Int64},Symbol})
|
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},StepRange{Int64, Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(push!),Segments{Tuple{Float64, Float64, Float64}},Tuple{Int64, Int64, Float64},Tuple{Int64, Int64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(resetfontsizes)})
|
Base.precompile(Tuple{typeof(resetfontsizes)})
|
||||||
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
||||||
Base.precompile(Tuple{typeof(series_annotations),Vector{Any}})
|
Base.precompile(Tuple{typeof(series_annotations),Vector{Any}})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Base.ReshapedArray{Int64, 2, UnitRange{Int64}, Tuple{}},Int64})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{AbsoluteLength},Int64})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Bool},Int64})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Int64},Int64})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{RGBA{Float64}},Int64})
|
||||||
Base.precompile(Tuple{typeof(spy),Any})
|
Base.precompile(Tuple{typeof(spy),Any})
|
||||||
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
||||||
Base.precompile(Tuple{typeof(stroke),Int64,Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(stroke),Int64,Vararg{Any, N} where N})
|
||||||
@ -338,15 +377,26 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(warn_on_attr_dim_mismatch),Series,Vector{Float64},Vector{Float64},Nothing,Base.Iterators.Flatten{Vector{Tuple{SeriesSegment}}}})
|
Base.precompile(Tuple{typeof(warn_on_attr_dim_mismatch),Series,Vector{Float64},Vector{Float64},Nothing,Base.Iterators.Flatten{Vector{Tuple{SeriesSegment}}}})
|
||||||
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any, N} where N})
|
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any, N} where N})
|
||||||
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
||||||
isdefined(Plots, Symbol("#170#171")) && Base.precompile(Tuple{getfield(Plots, Symbol("#170#171")),Any})
|
isdefined(Plots, Symbol("#166#167")) && Base.precompile(Tuple{getfield(Plots, Symbol("#166#167")),Any})
|
||||||
isdefined(Plots, Symbol("#320#356")) && Base.precompile(Tuple{getfield(Plots, Symbol("#320#356"))})
|
isdefined(Plots, Symbol("#2#6")) && Base.precompile(Tuple{getfield(Plots, Symbol("#2#6")),UnitRange{Int64}})
|
||||||
isdefined(Plots, Symbol("#4#8")) && Base.precompile(Tuple{getfield(Plots, Symbol("#4#8")),UnitRange{Int64}})
|
isdefined(Plots, Symbol("#295#331")) && Base.precompile(Tuple{getfield(Plots, Symbol("#295#331"))})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#102")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#102")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#316#352")) && Base.precompile(Tuple{getfield(Plots, Symbol("#316#352"))})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#103")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#103")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#100")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#100")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
||||||
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#101")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#101")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
||||||
let fbody = try __lookup_kwbody__(which(font, (Font,Vararg{Any, N} where N,))) catch missing end
|
let fbody = try __lookup_kwbody__(which(font, (Font,Vararg{Any, N} where N,))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}},typeof(font),Font,Vararg{Any, N} where N,))
|
precompile(fbody, (Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}},typeof(font),Font,Vararg{Any, N} where N,))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(gr_polyline, (Vector{Float64},Vector{Float64},typeof(GR.fillarea),))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Symbol,Symbol,typeof(gr_polyline),Vector{Float64},Vector{Float64},typeof(GR.fillarea),))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(gr_set_font, (Font,Subplot{GRBackend},))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Symbol,Symbol,RGBA{Float64},Float64,typeof(gr_set_font),Font,Subplot{GRBackend},))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
let fbody = try __lookup_kwbody__(which(plot!, (Any,))) catch missing end
|
let fbody = try __lookup_kwbody__(which(plot!, (Any,))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
@ -357,6 +407,26 @@ end
|
|||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Any,typeof(plot!),Any,Vararg{Any, N} where N,))
|
precompile(fbody, (Any,typeof(plot!),Any,Vararg{Any, N} where N,))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Any,typeof(plot!),Plot,))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Any,typeof(plot!),Plot,Plot,))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,Plot,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Any,typeof(plot!),Plot,Plot,Plot,))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,Plot,Vararg{Plot, N} where N,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Any,typeof(plot!),Plot,Plot,Plot,Vararg{Plot, N} where N,))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
let fbody = try __lookup_kwbody__(which(plot, (Any,))) catch missing end
|
let fbody = try __lookup_kwbody__(which(plot, (Any,))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
@ -367,15 +437,15 @@ end
|
|||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Any,typeof(plot),Any,Vararg{Any, N} where N,))
|
precompile(fbody, (Any,typeof(plot),Any,Vararg{Any, N} where N,))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(scatter, (Any,Vararg{Any, N} where N,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Any,typeof(scatter),Any,Vararg{Any, N} where N,))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
let fbody = try __lookup_kwbody__(which(title!, (AbstractString,))) catch missing end
|
let fbody = try __lookup_kwbody__(which(title!, (AbstractString,))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Any,typeof(title!),AbstractString,))
|
precompile(fbody, (Any,typeof(title!),AbstractString,))
|
||||||
end
|
end
|
||||||
end
|
|
||||||
let fbody = try __lookup_kwbody__(which(yaxis!, (Any,Vararg{Any, N} where N,))) catch missing end
|
|
||||||
if !ismissing(fbody)
|
|
||||||
precompile(fbody, (Any,typeof(yaxis!),Any,Vararg{Any, N} where N,))
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -74,6 +74,9 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Tuple{Int64, Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Tuple{Int64, Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(areaplot)),Any,typeof(areaplot),Any,Vararg{Any}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:flip,), Tuple{Bool}},typeof(attr!),Axis})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:foreground_color_grid, :grid, :gridalpha, :gridstyle, :gridlinewidth), Tuple{RGBA{Float64}, Bool, Float64, Symbol, Int64}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{Symbol}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{Symbol}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :flip, :minorgrid, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :flip, :minorgrid, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
@ -82,7 +85,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :guide), Tuple{Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :guide), Tuple{Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :mirror, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :mirror, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid,), Tuple{Bool}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid,), Tuple{Bool}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:gridlinewidth, :grid, :gridalpha, :gridstyle, :foreground_color_grid), Tuple{Int64, Bool, Float64, Symbol, RGBA{Float64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guidefonthalign, :guide_position, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guidefonthalign, :guide_position, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
||||||
@ -105,6 +107,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:halign, :valign, :rotation), Tuple{Symbol, Symbol, Int64}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:halign, :valign, :rotation), Tuple{Symbol, Symbol, Int64}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:rotation, :color), Tuple{Int64, RGBA{Float64}}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(lens!)),Any,typeof(lens!),Any,Vararg{Any}})
|
Base.precompile(Tuple{Core.kwftype(typeof(lens!)),Any,typeof(lens!),Any,Vararg{Any}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64}})
|
||||||
@ -143,6 +146,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!)})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:w,), Tuple{Int64}},typeof(plot!),Plot{GRBackend},Vector{Float64},Vector{Float64},Vararg{Any}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:w,), Tuple{Int64}},typeof(plot!),Plot{GRBackend},Vector{Float64},Vector{Float64},Vararg{Any}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:xgrid,), Tuple{Tuple{Symbol, Symbol, Int64, Symbol, Float64}}},typeof(plot!),Plot{GRBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:xgrid,), Tuple{Tuple{Symbol, Symbol, Int64, Symbol, Float64}}},typeof(plot!),Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!),Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
||||||
@ -162,6 +166,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label, :legend, :seriestype), Tuple{String, Symbol, Symbol}},typeof(plot),Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label, :legend, :seriestype), Tuple{String, Symbol, Symbol}},typeof(plot),Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label, :title, :xlabel, :linewidth, :legend), Tuple{Matrix{String}, String, String, Int64, Symbol}},typeof(plot),Vector{Function},Float64,Float64})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label, :title, :xlabel, :linewidth, :legend), Tuple{Matrix{String}, String, String, Int64, Symbol}},typeof(plot),Vector{Function},Float64,Float64})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label,), Tuple{Matrix{String}}},typeof(plot),Vector{AbstractVector{Float64}}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:label,), Tuple{Matrix{String}}},typeof(plot),Vector{AbstractVector{Float64}}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:labels,), Tuple{Matrix{String}}},typeof(plot),PortfolioComposition})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :group, :linetype, :linecolor), Tuple{Matrix{Any}, Vector{String}, Matrix{Symbol}, Symbol}},typeof(plot),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :group, :linetype, :linecolor), Tuple{Matrix{Any}, Vector{String}, Matrix{Symbol}, Symbol}},typeof(plot),Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :label, :fillrange, :fillalpha), Tuple{Tuple{Int64, Int64}, String, Int64, Float64}},typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :label, :fillrange, :fillalpha), Tuple{Tuple{Int64, Int64}, String, Int64, Float64}},typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :label, :fillrange, :fillalpha), Tuple{Tuple{Int64, Int64}, String, Int64, Float64}},typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:layout, :label, :fillrange, :fillalpha), Tuple{Tuple{Int64, Int64}, String, Int64, Float64}},typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
||||||
@ -200,6 +205,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}},typeof(plot),UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{Tuple{LinRange{Float64, Int64}, LinRange{Float64, Int64}}}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{Tuple{LinRange{Float64, Int64}, LinRange{Float64, Int64}}}},typeof(plot),UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{typeof(sqrt)}},typeof(plot),UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:ribbon,), Tuple{typeof(sqrt)}},typeof(plot),UnitRange{Int64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriescolor, :fillalpha), Tuple{Matrix{Symbol}, Matrix{Float64}}},typeof(plot),AreaPlot})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype, :markershape, :markersize, :color), Tuple{Matrix{Symbol}, Vector{Symbol}, Int64, Vector{Symbol}}},typeof(plot),Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype, :markershape, :markersize, :color), Tuple{Matrix{Symbol}, Vector{Symbol}, Int64, Vector{Symbol}}},typeof(plot),Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),Vector{DateTime},UnitRange{Int64},Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot),Vector{DateTime},UnitRange{Int64},Matrix{Float64}})
|
||||||
@ -216,6 +222,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any}})
|
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(scatter!)),Any,typeof(scatter!),Any})
|
Base.precompile(Tuple{Core.kwftype(typeof(scatter!)),Any,typeof(scatter!),Any})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip, :disp), Tuple{Vector{Int64}, Bool}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(yaxis!)),Any,typeof(yaxis!),Any,Any})
|
Base.precompile(Tuple{Core.kwftype(typeof(yaxis!)),Any,typeof(yaxis!),Any,Any})
|
||||||
Base.precompile(Tuple{Type{GridLayout},Int64,Vararg{Int64}})
|
Base.precompile(Tuple{Type{GridLayout},Int64,Vararg{Int64}})
|
||||||
@ -260,8 +267,12 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Symbol},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{Symbol},String})
|
||||||
Base.precompile(Tuple{typeof(_cycle),Base.OneTo{Int64},Vector{Int64}})
|
Base.precompile(Tuple{typeof(_cycle),Base.OneTo{Int64},Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cycle),StepRange{Int64, Int64},Vector{Int64}})
|
Base.precompile(Tuple{typeof(_cycle),StepRange{Int64, Int64},Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),UnitRange{Int64},Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},StepRange{Int64, Int64}})
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},StepRange{Int64, Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},Vector{Int64}})
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Int64},StepRange{Int64, Int64}})
|
||||||
|
Base.precompile(Tuple{typeof(_cycle),Vector{Int64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_heatmap_edges),Vector{Float64},Bool,Bool})
|
Base.precompile(Tuple{typeof(_heatmap_edges),Vector{Float64},Bool,Bool})
|
||||||
@ -272,8 +283,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{GRBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{PlotlyBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(annotate!),AbstractVector{<:Tuple}})
|
Base.precompile(Tuple{typeof(annotate!),AbstractVector{<:Tuple}})
|
||||||
@ -284,6 +293,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
||||||
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
||||||
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Int64, Float64}})
|
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Int64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(discrete_value!),Axis,Vector{Union{Missing, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64},Vararg{Vector{Float64}}})
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64},Vararg{Vector{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
||||||
@ -309,17 +319,23 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Base.OneTo{Int64},Vector{Float64},Tuple{Float64, Float64},Int64,Int64})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Base.OneTo{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Base.OneTo{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_markers),Series,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_markers),Series,UnitRange{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_markers),Series,UnitRange{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Vector{Int64},Vector{Float64},Tuple{Float64, Float64}})
|
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,UnitRange{Int64},Vector{Float64},Vector{Int64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Float64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Float64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Float64},Vector{Float64},Nothing,Tuple{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Vector{Int64},Vector{Int64},Nothing,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_fill_viewport),Vector{Float64},RGBA{Float64}})
|
Base.precompile(Tuple{typeof(gr_fill_viewport),Vector{Float64},RGBA{Float64}})
|
||||||
@ -330,12 +346,13 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(gr_label_ticks_3d),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks_3d),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_polyline),Vector{Float64},Vector{Float64},Function})
|
||||||
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
||||||
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
||||||
|
Base.precompile(Tuple{typeof(gr_text_size),String})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol,Tuple{Int64, Int64},Bool})
|
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
||||||
@ -350,10 +367,14 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Int64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Int64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),StepRange{Int64, Int64},Tuple{Int64, Int64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),StepRange{Int64, Int64},Tuple{Int64, Int64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),UnitRange{Int64},Tuple{Float64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),UnitRange{Int64},Tuple{Float64, Float64},Symbol,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(partialcircle),Float64,Float64,Int64})
|
||||||
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
||||||
|
Base.precompile(Tuple{typeof(plot!),Any})
|
||||||
|
Base.precompile(Tuple{typeof(plot!),Plot,Plot,Plot,Vararg{Plot}})
|
||||||
Base.precompile(Tuple{typeof(plot),Any,Any})
|
Base.precompile(Tuple{typeof(plot),Any,Any})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend},Vararg{Plot{GRBackend}}})
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend},Vararg{Plot{GRBackend}}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend},Vararg{Plot{PlotlyBackend}}})
|
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend},Plot{PlotlyBackend},Vararg{Plot{PlotlyBackend}}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
||||||
Base.precompile(Tuple{typeof(processGridArg!),Dict{Symbol, Any},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(processGridArg!),Dict{Symbol, Any},Symbol,Symbol})
|
||||||
@ -363,6 +384,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Matrix{Symbol}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Matrix{Symbol}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Stroke})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Symbol})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Symbol})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol}})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol}})
|
||||||
@ -374,7 +396,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(quiver_using_arrows),DefaultsDict})
|
Base.precompile(Tuple{typeof(quiver_using_arrows),DefaultsDict})
|
||||||
Base.precompile(Tuple{typeof(quiver_using_hack),DefaultsDict})
|
|
||||||
Base.precompile(Tuple{typeof(resetfontsizes)})
|
Base.precompile(Tuple{typeof(resetfontsizes)})
|
||||||
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
||||||
Base.precompile(Tuple{typeof(series_annotations),Vector{Any}})
|
Base.precompile(Tuple{typeof(series_annotations),Vector{Any}})
|
||||||
@ -382,24 +403,27 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{AbsoluteLength},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{AbsoluteLength},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{Bool},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Bool},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{Int64},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Int64},Int64})
|
||||||
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{PlotUtils.ContinuousColorGradient},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{RGBA{Float64}},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{RGBA{Float64}},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{String},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{String},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{Symbol},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Symbol},Int64})
|
||||||
Base.precompile(Tuple{typeof(spy),Any})
|
Base.precompile(Tuple{typeof(spy),Any})
|
||||||
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
||||||
Base.precompile(Tuple{typeof(stroke),Int64,Vararg{Any}})
|
Base.precompile(Tuple{typeof(stroke),Int64,Vararg{Any}})
|
||||||
|
Base.precompile(Tuple{typeof(text),String,Symbol})
|
||||||
Base.precompile(Tuple{typeof(title!),AbstractString})
|
Base.precompile(Tuple{typeof(title!),AbstractString})
|
||||||
Base.precompile(Tuple{typeof(update_clims),Float64,Float64,SubArray{Int64, 1, Vector{Int64}, Tuple{UnitRange{Int64}}, true},typeof(ignorenan_extrema)})
|
|
||||||
Base.precompile(Tuple{typeof(vline!),Any})
|
Base.precompile(Tuple{typeof(vline!),Any})
|
||||||
Base.precompile(Tuple{typeof(warn_on_attr_dim_mismatch),Series,Vector{Float64},Vector{Float64},Nothing,Base.Iterators.Flatten{Vector{Tuple{SeriesSegment}}}})
|
Base.precompile(Tuple{typeof(warn_on_attr_dim_mismatch),Series,Vector{Float64},Vector{Float64},Nothing,Base.Iterators.Flatten{Vector{Tuple{SeriesSegment}}}})
|
||||||
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any}})
|
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any}})
|
||||||
|
Base.precompile(Tuple{typeof(xgrid!),Plot{PlotlyBackend},Symbol,Vararg{Any}})
|
||||||
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
||||||
isdefined(Plots, Symbol("#172#173")) && Base.precompile(Tuple{getfield(Plots, Symbol("#172#173")),Any})
|
isdefined(Plots, Symbol("#168#169")) && Base.precompile(Tuple{getfield(Plots, Symbol("#168#169")),Any})
|
||||||
isdefined(Plots, Symbol("#174#175")) && Base.precompile(Tuple{getfield(Plots, Symbol("#174#175")),Any})
|
isdefined(Plots, Symbol("#170#171")) && Base.precompile(Tuple{getfield(Plots, Symbol("#170#171")),Any})
|
||||||
isdefined(Plots, Symbol("#326#362")) && Base.precompile(Tuple{getfield(Plots, Symbol("#326#362"))})
|
isdefined(Plots, Symbol("#2#6")) && Base.precompile(Tuple{getfield(Plots, Symbol("#2#6")),UnitRange{Int64}})
|
||||||
isdefined(Plots, Symbol("#4#8")) && Base.precompile(Tuple{getfield(Plots, Symbol("#4#8")),UnitRange{Int64}})
|
isdefined(Plots, Symbol("#301#337")) && Base.precompile(Tuple{getfield(Plots, Symbol("#301#337"))})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#104")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#104")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#322#358")) && Base.precompile(Tuple{getfield(Plots, Symbol("#322#358"))})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#105")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#105")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#102")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#102")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
||||||
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#103")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#103")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
||||||
let fbody = try __lookup_kwbody__(which(annotate!, (AbstractVector{<:Tuple},))) catch missing end
|
let fbody = try __lookup_kwbody__(which(annotate!, (AbstractVector{<:Tuple},))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(annotate!),AbstractVector{<:Tuple},))
|
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(annotate!),AbstractVector{<:Tuple},))
|
||||||
@ -414,11 +438,31 @@ end
|
|||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Symbol,Symbol,typeof(gr_polyline),Vector{Float64},Vector{Float64},typeof(GR.fillarea),))
|
precompile(fbody, (Symbol,Symbol,typeof(gr_polyline),Vector{Float64},Vector{Float64},typeof(GR.fillarea),))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(gr_set_font, (Font,Subplot{GRBackend},))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Symbol,Symbol,RGBA{Float64},Float64,typeof(gr_set_font),Font,Subplot{GRBackend},))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
let fbody = try __lookup_kwbody__(which(plot!, (Any,Vararg{Any},))) catch missing end
|
let fbody = try __lookup_kwbody__(which(plot!, (Any,Vararg{Any},))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(plot!),Any,Vararg{Any},))
|
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(plot!),Any,Vararg{Any},))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(plot!),Plot,Plot,))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,Plot,))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(plot!),Plot,Plot,Plot,))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
let fbody = try __lookup_kwbody__(which(plot!, (Plot,Plot,Plot,Vararg{Plot},))) catch missing end
|
||||||
|
if !ismissing(fbody)
|
||||||
|
precompile(fbody, (Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}},typeof(plot!),Plot,Plot,Plot,Vararg{Plot},))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
let fbody = try __lookup_kwbody__(which(plot, (Any,))) catch missing end
|
let fbody = try __lookup_kwbody__(which(plot, (Any,))) catch missing end
|
||||||
if !ismissing(fbody)
|
if !ismissing(fbody)
|
||||||
|
|||||||
@ -15,37 +15,22 @@ end
|
|||||||
|
|
||||||
function _precompile_()
|
function _precompile_()
|
||||||
ccall(:jl_generating_output, Cint, ()) == 1 || return nothing
|
ccall(:jl_generating_output, Cint, ()) == 1 || return nothing
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(Type)),NamedTuple{(:parent,), Tuple{Subplot{GRBackend}}},Type{Subplot},GRBackend})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(Type)),NamedTuple{(:parent,), Tuple{Subplot{PlotlyBackend}}},Type{Subplot},PlotlyBackend})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Int64})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Int64})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}, Vector{Float64}},Tuple{Int64, Int64}})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Nothing}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(_make_hist)),NamedTuple{(:normed, :weights), Tuple{Bool, Vector{Int64}}},typeof(_make_hist),Tuple{Vector{Float64}},Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:formatter,), Tuple{typeof(datetimeformatter)}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :flip, :minorgrid, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims), Tuple{Bool, Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :lims, :flip), Tuple{Bool, Tuple{Float64, Float64}, Bool}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :guide), Tuple{Bool, Bool, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:grid, :minorgrid, :mirror, :guide), Tuple{Bool, Bool, Bool, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:gridlinewidth, :grid, :gridalpha, :gridstyle, :foreground_color_grid), Tuple{Int64, Bool, Float64, Symbol, RGBA{Float64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide,), Tuple{String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guide_position, :guidefontvalign, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:guidefonthalign, :guide_position, :mirror, :guide), Tuple{Symbol, Symbol, Bool, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims, :flip, :ticks, :guide), Tuple{Tuple{Int64, Int64}, Bool, StepRange{Int64, Int64}, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Float64, Float64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Int64, Float64}}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:lims,), Tuple{Tuple{Int64, Float64}}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:minorgrid, :scale, :guide), Tuple{Bool, Symbol, String}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:ticks,), Tuple{Nothing}},typeof(attr!),Axis})
|
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:ticks,), Tuple{Nothing}},typeof(attr!),Axis})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(attr!)),NamedTuple{(:ticks,), Tuple{UnitRange{Int64}}},typeof(attr!),Axis})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:shape,), Tuple{Symbol}},typeof(default)})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:titlefont, :legendfontsize, :guidefont, :tickfont, :guide, :framestyle, :yminorgrid), Tuple{Tuple{Int64, String}, Int64, Tuple{Int64, Symbol}, Tuple{Int64, Symbol}, String, Symbol, Bool}},typeof(default)})
|
Base.precompile(Tuple{Core.kwftype(typeof(default)),NamedTuple{(:titlefont, :legendfontsize, :guidefont, :tickfont, :guide, :framestyle, :yminorgrid), Tuple{Tuple{Int64, String}, Int64, Tuple{Int64, Symbol}, Tuple{Int64, Symbol}, String, Symbol, Bool}},typeof(default)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(font)),NamedTuple{(:family, :pointsize, :halign, :valign, :rotation, :color), Tuple{String, Int64, Symbol, Symbol, Float64, RGBA{Float64}}},typeof(font)})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),StepRange{Int64, Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),StepRange{Int64, Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),UnitRange{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_polyline)),NamedTuple{(:arrowside, :arrowstyle), Tuple{Symbol, Symbol}},typeof(gr_polyline),Vector{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:halign, :valign, :rotation), Tuple{Symbol, Symbol, Int64}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:halign, :valign, :rotation), Tuple{Symbol, Symbol, Int64}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(gr_set_font)),NamedTuple{(:rotation, :color), Tuple{Int64, RGBA{Float64}}},typeof(gr_set_font),Font,Subplot{GRBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :label, :seriestype), Tuple{Float64, String, Symbol}},typeof(plot!),Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{GRBackend},Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{GRBackend},Vector{GeometryBasics.Point2{Float64}}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:alpha, :seriestype), Tuple{Float64, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{GeometryBasics.Point2{Float64}}})
|
||||||
@ -73,15 +58,15 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Vector{Int64},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype, :inset), Tuple{Symbol, Tuple{Int64, BoundingBox{Tuple{Length{:w, Float64}, Length{:h, Float64}}, Tuple{Length{:w, Float64}, Length{:h, Float64}}}}}},typeof(plot!),Vector{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Vector{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:seriestype,), Tuple{Symbol}},typeof(plot!),Vector{Int64}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!),Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!),Plot{PlotlyBackend}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!),Plot{PlotlyBackend}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:title,), Tuple{String}},typeof(plot!)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:w,), Tuple{Int64}},typeof(plot!),Plot{GRBackend},Vector{Float64},Vector{Float64},Vararg{Any}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:w,), Tuple{Int64}},typeof(plot!),Plot{GRBackend},Vector{Float64},Vector{Float64},Vararg{Any}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:xgrid,), Tuple{Tuple{Symbol, Symbol, Int64, Symbol, Float64}}},typeof(plot!),Plot{GRBackend}})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:yaxis, :minorgrid), Tuple{Tuple{String, Symbol}, Bool}},typeof(plot!)})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{GRBackend},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Plot{PlotlyBackend},Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot!)),NamedTuple{(:zcolor, :m, :ms, :lab, :seriestype), Tuple{Vector{Float64}, Tuple{Symbol, Float64, Stroke}, Vector{Float64}, String, Symbol}},typeof(plot!),Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:annotations, :leg), Tuple{Tuple{Int64, Float64, PlotText}, Bool}},typeof(plot),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:annotations, :leg), Tuple{Tuple{Int64, Float64, PlotText}, Bool}},typeof(plot),Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:arrow,), Tuple{Int64}},typeof(plot),Vector{Float64},Vector{Float64}})
|
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:aspect_ratio, :seriestype), Tuple{Int64, Symbol}},typeof(plot),Vector{String},Vector{String},Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:aspect_ratio, :seriestype), Tuple{Int64, Symbol}},typeof(plot),Vector{String},Vector{String},Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:bar_width, :alpha, :color, :fillto, :label, :seriestype), Tuple{Float64, Float64, Vector{Symbol}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}, String, Symbol}},typeof(plot),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:bar_width, :alpha, :color, :fillto, :label, :seriestype), Tuple{Float64, Float64, Vector{Symbol}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}, String, Symbol}},typeof(plot),Vector{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:bins, :weights, :seriestype), Tuple{Symbol, Vector{Int64}, Symbol}},typeof(plot),Vector{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:bins, :weights, :seriestype), Tuple{Symbol, Vector{Int64}, Symbol}},typeof(plot),Vector{Float64}})
|
||||||
@ -141,6 +126,7 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:xaxis, :background_color, :leg), Tuple{Tuple{String, Tuple{Int64, Int64}, StepRange{Int64, Int64}, Symbol}, RGB{Float64}, Bool}},typeof(plot),Matrix{Float64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:xaxis, :background_color, :leg), Tuple{Tuple{String, Tuple{Int64, Int64}, StepRange{Int64, Int64}, Symbol}, RGB{Float64}, Bool}},typeof(plot),Matrix{Float64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
Base.precompile(Tuple{Core.kwftype(typeof(plot)),NamedTuple{(:zcolor, :m, :leg, :cbar, :w), Tuple{StepRange{Int64, Int64}, Tuple{Int64, Float64, Symbol, Stroke}, Bool, Bool, Int64}},typeof(plot),Vector{Float64},Vector{Float64},UnitRange{Int64}})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any}})
|
Base.precompile(Tuple{Core.kwftype(typeof(portfoliocomposition)),Any,typeof(portfoliocomposition),Any,Vararg{Any}})
|
||||||
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip, :disp), Tuple{Vector{Int64}, Bool}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
Base.precompile(Tuple{Core.kwftype(typeof(test_examples)),NamedTuple{(:skip,), Tuple{Vector{Int64}}},typeof(test_examples),Symbol})
|
||||||
Base.precompile(Tuple{Core.kwftype(typeof(yaxis!)),Any,typeof(yaxis!),Any,Any})
|
Base.precompile(Tuple{Core.kwftype(typeof(yaxis!)),Any,typeof(yaxis!),Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},AbstractVector{OHLC}})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},AbstractVector{OHLC}})
|
||||||
@ -151,9 +137,11 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:histogram2d}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:histogram2d}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:hline}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:hline}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:hspan}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:hspan}},Any,Any,Any})
|
||||||
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:lens}},AbstractPlot})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:pie}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:pie}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:quiver}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:quiver}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:sticks}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:sticks}},Any,Any,Any})
|
||||||
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:vline}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:vspan}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:vspan}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:xerror}},Any,Any,Any})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Type{Val{:xerror}},Any,Any,Any})
|
||||||
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Vector{ComplexF64}})
|
Base.precompile(Tuple{typeof(RecipesBase.apply_recipe),AbstractDict{Symbol, Any},Vector{ComplexF64}})
|
||||||
@ -168,21 +156,16 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(RecipesPipeline.unzip),Vector{GeometryBasics.Point2{Float64}}})
|
Base.precompile(Tuple{typeof(RecipesPipeline.unzip),Vector{GeometryBasics.Point2{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(_bin_centers),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}})
|
Base.precompile(Tuple{typeof(_bin_centers),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{PlotUtils.ContinuousColorGradient},String})
|
Base.precompile(Tuple{typeof(_cbar_unique),Vector{PlotUtils.ContinuousColorGradient},String})
|
||||||
Base.precompile(Tuple{typeof(_cbar_unique),Vector{StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}},String})
|
Base.precompile(Tuple{typeof(_cycle),StepRange{Int64, Int64},Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cycle),ColorPalette,Int64})
|
|
||||||
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},StepRange{Int64, Int64}})
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},StepRange{Int64, Int64}})
|
||||||
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},Vector{Int64}})
|
Base.precompile(Tuple{typeof(_cycle),Vector{Float64},Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{GRBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
Base.precompile(Tuple{typeof(_do_plot_show),Plot{PlotlyBackend},Bool})
|
||||||
Base.precompile(Tuple{typeof(_heatmap_edges),Vector{Float64},Bool,Bool})
|
|
||||||
Base.precompile(Tuple{typeof(_preprocess_barlike),DefaultsDict,Base.OneTo{Int64},Vector{Float64}})
|
Base.precompile(Tuple{typeof(_preprocess_barlike),DefaultsDict,Base.OneTo{Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(_preprocess_binlike),DefaultsDict,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64}})
|
Base.precompile(Tuple{typeof(_preprocess_binlike),DefaultsDict,StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(_replace_markershape),Vector{Symbol}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
Base.precompile(Tuple{typeof(_update_min_padding!),GridLayout})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{GRBackend},Subplot{GRBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
Base.precompile(Tuple{typeof(_update_subplot_args),Plot{PlotlyBackend},Subplot{PlotlyBackend},Dict{Symbol, Any},Int64,Bool})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{GRBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_legend),Subplot{PlotlyBackend},Dict{Symbol, Any}})
|
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{GRBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
Base.precompile(Tuple{typeof(_update_subplot_periphery),Subplot{PlotlyBackend},Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(annotate!),AbstractVector{<:Tuple}})
|
Base.precompile(Tuple{typeof(annotate!),AbstractVector{<:Tuple}})
|
||||||
@ -193,12 +176,14 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
Base.precompile(Tuple{typeof(bbox),Float64,Float64,Float64,Float64})
|
||||||
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
Base.precompile(Tuple{typeof(build_layout),GridLayout,Int64,Vector{Plot}})
|
||||||
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Int64, Float64}})
|
Base.precompile(Tuple{typeof(convert_to_polar),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Vector{Float64},Tuple{Int64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64},Vararg{Vector{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
Base.precompile(Tuple{typeof(error_coords),Vector{Float64},Vector{Float64},Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
Base.precompile(Tuple{typeof(error_zipit),Tuple{Vector{Float64}, Vector{Float64}, Vector{Float64}}})
|
||||||
Base.precompile(Tuple{typeof(fakedata),Int64,Int64})
|
Base.precompile(Tuple{typeof(fakedata),Int64,Int64})
|
||||||
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Float64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Float64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Int64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(get_minor_ticks),Subplot{GRBackend},Axis,Tuple{Vector{Int64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(get_series_color),SubArray{Symbol, 1, Vector{Symbol}, Tuple{UnitRange{Int64}}, true},Subplot{GRBackend},Int64,Symbol})
|
Base.precompile(Tuple{typeof(get_series_color),SubArray{Symbol, 1, Vector{Symbol}, Tuple{UnitRange{Int64}}, true},Subplot{GRBackend},Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(get_series_color),Vector{Symbol},Subplot{GRBackend},Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(get_series_color),Vector{Symbol},Subplot{PlotlyBackend},Int64,Symbol})
|
Base.precompile(Tuple{typeof(get_series_color),Vector{Symbol},Subplot{PlotlyBackend},Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(get_ticks),StepRange{Int64, Int64},Vector{Float64},Vector{Any},Tuple{Int64, Int64},Vararg{Any}})
|
Base.precompile(Tuple{typeof(get_ticks),StepRange{Int64, Int64},Vector{Float64},Vector{Any},Tuple{Int64, Int64},Vararg{Any}})
|
||||||
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Float64, Float64},Vararg{Any}})
|
Base.precompile(Tuple{typeof(get_ticks),Symbol,Vector{Float64},Vector{Any},Tuple{Float64, Float64},Vararg{Any}})
|
||||||
@ -213,9 +198,10 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_draw_heatmap),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_heatmap),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Float64,Float64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Float64,Float64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Shape{Float64, Float64}})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Float64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Float64,Int64,Symbol})
|
||||||
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Float64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
Base.precompile(Tuple{typeof(gr_draw_marker),Series,Int64,Int64,Tuple{Float64, Float64},Int64,Int64,Int64,Symbol})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_markers),Series,Vector{Int64},Vector{Float64},Tuple{Float64, Float64},Int64,Int64})
|
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},UnitRange{Int64},Tuple{Vector{Float64}, Vector{Float64}},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,Base.OneTo{Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_segments),Series,StepRange{Int64, Int64},Vector{Float64},Int64,Tuple{Float64, Float64}})
|
||||||
@ -223,7 +209,6 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Matrix{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
Base.precompile(Tuple{typeof(gr_draw_surface),Series,Vector{Float64},Vector{Float64},Vector{Float64},Tuple{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_fill_viewport),Vector{Float64},RGBA{Float64}})
|
Base.precompile(Tuple{typeof(gr_fill_viewport),Vector{Float64},RGBA{Float64}})
|
||||||
Base.precompile(Tuple{typeof(gr_get_3d_axis_angle),Vector{Float64},Float64,Float64,Symbol})
|
|
||||||
Base.precompile(Tuple{typeof(gr_get_ticks_size),Tuple{Vector{Float64}, Vector{String}},Int64})
|
Base.precompile(Tuple{typeof(gr_get_ticks_size),Tuple{Vector{Float64}, Vector{String}},Int64})
|
||||||
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Float64}, Vector{String}}})
|
||||||
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
Base.precompile(Tuple{typeof(gr_label_ticks),Subplot{GRBackend},Symbol,Tuple{Vector{Int64}, Vector{String}}})
|
||||||
@ -231,20 +216,17 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
Base.precompile(Tuple{typeof(gr_polaraxes),Int64,Float64,Subplot{GRBackend}})
|
||||||
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
Base.precompile(Tuple{typeof(gr_set_gradient),PlotUtils.ContinuousColorGradient})
|
||||||
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
Base.precompile(Tuple{typeof(gr_text),Float64,Float64,String})
|
||||||
|
Base.precompile(Tuple{typeof(gr_text_size),String})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), NTuple{9, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
Base.precompile(Tuple{typeof(gr_update_viewport_legend!),Vector{Float64},Subplot{GRBackend},NamedTuple{(:w, :h, :dy, :leftw, :textw, :rightw, :xoffset, :yoffset, :width_factor), Tuple{Int64, Int64, Int64, Float64, Int64, Float64, Float64, Float64, Float64}}})
|
||||||
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
Base.precompile(Tuple{typeof(gr_viewport_from_bbox),Subplot{GRBackend},BoundingBox{Tuple{AbsoluteLength, AbsoluteLength}, Tuple{AbsoluteLength, AbsoluteLength}},AbsoluteLength,AbsoluteLength,Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),Base.OneTo{Int64},Symbol})
|
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),UnitRange{Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol,Vector{Float64},Symbol,Tuple{Int64, Int64},Bool})
|
|
||||||
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
Base.precompile(Tuple{typeof(heatmap_edges),Vector{Float64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(ignorenan_minimum),Vector{Int64}})
|
Base.precompile(Tuple{typeof(ignorenan_minimum),Vector{Int64}})
|
||||||
Base.precompile(Tuple{typeof(is_marker_supported),GRBackend,Vector{Symbol}})
|
Base.precompile(Tuple{typeof(is_marker_supported),GRBackend,Vector{Symbol}})
|
||||||
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :blank), Tuple{Symbol, Bool}}})
|
Base.precompile(Tuple{typeof(layout_args),Matrix{Any}})
|
||||||
Base.precompile(Tuple{typeof(layout_args),NamedTuple{(:label, :width, :height), Tuple{Symbol, Symbol, Float64}}})
|
|
||||||
Base.precompile(Tuple{typeof(link_axes!),GridLayout,Symbol})
|
Base.precompile(Tuple{typeof(link_axes!),GridLayout,Symbol})
|
||||||
Base.precompile(Tuple{typeof(make_steps),Vector{Float64},Symbol,Bool})
|
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Function})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Function})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Float64, Float64},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Float64},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(optimal_ticks_and_labels),Nothing,Tuple{Int64, Float64},Symbol,Symbol})
|
||||||
@ -254,13 +236,14 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
Base.precompile(Tuple{typeof(partialcircle),Int64,Float64,Int64})
|
||||||
Base.precompile(Tuple{typeof(plot!),Plot,Plot,Plot,Vararg{Plot}})
|
Base.precompile(Tuple{typeof(plot!),Plot,Plot,Plot,Vararg{Plot}})
|
||||||
Base.precompile(Tuple{typeof(plot),Any,Any})
|
Base.precompile(Tuple{typeof(plot),Any,Any})
|
||||||
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend},Plot{GRBackend},Vararg{Plot{GRBackend}}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend},Plot{GRBackend}})
|
||||||
|
Base.precompile(Tuple{typeof(plot),Plot{GRBackend}})
|
||||||
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(plot),Plot{PlotlyBackend},Plot{PlotlyBackend}})
|
||||||
Base.precompile(Tuple{typeof(processLineArg),Dict{Symbol, Any},Int64})
|
|
||||||
Base.precompile(Tuple{typeof(processLineArg),Dict{Symbol, Any},Matrix{Symbol}})
|
Base.precompile(Tuple{typeof(processLineArg),Dict{Symbol, Any},Matrix{Symbol}})
|
||||||
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Matrix{Symbol}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},RGBA{Float64}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Shape{Float64, Float64}})
|
||||||
Base.precompile(Tuple{typeof(processMarkerArg),Dict{Symbol, Any},Symbol})
|
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText,Font})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText,Font})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,PlotText})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol},Font})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{GRBackend},Int64,Float64,Tuple{String, Int64, Symbol, Symbol},Font})
|
||||||
@ -274,17 +257,15 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{PlotlyBackend},Int64,Float64,Tuple{String, Symbol, Int64, String},Font})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{PlotlyBackend},Int64,Float64,Tuple{String, Symbol, Int64, String},Font})
|
||||||
Base.precompile(Tuple{typeof(process_annotation),Subplot{PlotlyBackend},Int64,Float64,Tuple{String, Symbol, Int64, String}})
|
Base.precompile(Tuple{typeof(process_annotation),Subplot{PlotlyBackend},Int64,Float64,Tuple{String, Symbol, Int64, String}})
|
||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},StepRange{Int64, Int64},Symbol})
|
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},StepRange{Int64, Int64},Symbol})
|
||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},String,Symbol})
|
|
||||||
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
Base.precompile(Tuple{typeof(process_axis_arg!),Dict{Symbol, Any},Symbol,Symbol})
|
||||||
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
Base.precompile(Tuple{typeof(push!),Plot{GRBackend},Float64,Vector{Float64}})
|
||||||
Base.precompile(Tuple{typeof(push!),Segments{Tuple{Float64, Float64}},Tuple{Int64, Int64},Tuple{Float64, Int64}})
|
Base.precompile(Tuple{typeof(push!),Segments{Tuple{Float64, Float64, Float64}},Tuple{Float64, Int64, Int64},Tuple{Float64, Int64, Int64}})
|
||||||
Base.precompile(Tuple{typeof(resetfontsizes)})
|
Base.precompile(Tuple{typeof(resetfontsizes)})
|
||||||
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
Base.precompile(Tuple{typeof(scalefontsizes),Float64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Base.ReshapedArray{Int64, 2, UnitRange{Int64}, Tuple{}},Int64})
|
Base.precompile(Tuple{typeof(series_annotations),Vector{Any}})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{AbsoluteLength},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{AbsoluteLength},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{Bool},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Bool},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{Int64},Int64})
|
Base.precompile(Tuple{typeof(slice_arg),Matrix{Int64},Int64})
|
||||||
Base.precompile(Tuple{typeof(slice_arg),Matrix{PlotUtils.ContinuousColorGradient},Int64})
|
|
||||||
Base.precompile(Tuple{typeof(spy),Any})
|
Base.precompile(Tuple{typeof(spy),Any})
|
||||||
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
Base.precompile(Tuple{typeof(straightline_data),Tuple{Float64, Float64},Tuple{Float64, Float64},Vector{Float64},Vector{Float64},Int64})
|
||||||
Base.precompile(Tuple{typeof(title!),AbstractString})
|
Base.precompile(Tuple{typeof(title!),AbstractString})
|
||||||
@ -294,8 +275,8 @@ function _precompile_()
|
|||||||
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any}})
|
Base.precompile(Tuple{typeof(xgrid!),Plot{GRBackend},Symbol,Vararg{Any}})
|
||||||
Base.precompile(Tuple{typeof(xgrid!),Plot{PlotlyBackend},Symbol,Vararg{Any}})
|
Base.precompile(Tuple{typeof(xgrid!),Plot{PlotlyBackend},Symbol,Vararg{Any}})
|
||||||
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
Base.precompile(Tuple{typeof(xlims),Subplot{PlotlyBackend}})
|
||||||
isdefined(Plots, Symbol("#303#339")) && Base.precompile(Tuple{getfield(Plots, Symbol("#303#339"))})
|
isdefined(Plots, Symbol("#2#6")) && Base.precompile(Tuple{getfield(Plots, Symbol("#2#6")),UnitRange{Int64}})
|
||||||
isdefined(Plots, Symbol("#4#8")) && Base.precompile(Tuple{getfield(Plots, Symbol("#4#8")),UnitRange{Int64}})
|
isdefined(Plots, Symbol("#322#358")) && Base.precompile(Tuple{getfield(Plots, Symbol("#322#358"))})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#104")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#104")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#102")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#102")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64}},Float64,Bool})
|
||||||
isdefined(Plots, Symbol("#add_major_or_minor_segments#105")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#105")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
isdefined(Plots, Symbol("#add_major_or_minor_segments#103")) && Base.precompile(Tuple{getfield(Plots, Symbol("#add_major_or_minor_segments#103")),Vector{Float64},Bool,Segments{Tuple{Float64, Float64, Float64}},Float64,Bool})
|
||||||
end
|
end
|
||||||
|
|||||||
2
deps/SnoopCompile/snoop_bot_config.jl
vendored
2
deps/SnoopCompile/snoop_bot_config.jl
vendored
@ -2,6 +2,6 @@ using CompileBot
|
|||||||
|
|
||||||
botconfig = BotConfig(
|
botconfig = BotConfig(
|
||||||
"Plots",
|
"Plots",
|
||||||
version = ["1.6", "1.7", "nightly"], # <<< keep these versions in sync with .github/workflows/SnoopCompile.yml
|
version = ["1.6", "1.7", "1.8", "nightly"], # <<< keep these versions in sync with .github/workflows/SnoopCompile.yml
|
||||||
# else_version = "nightly",
|
# else_version = "nightly",
|
||||||
)
|
)
|
||||||
|
|||||||
33
src/Plots.jl
33
src/Plots.jl
@ -1,5 +1,7 @@
|
|||||||
module Plots
|
module Plots
|
||||||
|
|
||||||
|
using Pkg
|
||||||
|
|
||||||
if isdefined(Base, :Experimental) && isdefined(Base.Experimental, Symbol("@optlevel"))
|
if isdefined(Base, :Experimental) && isdefined(Base.Experimental, Symbol("@optlevel"))
|
||||||
@eval Base.Experimental.@optlevel 1
|
@eval Base.Experimental.@optlevel 1
|
||||||
end
|
end
|
||||||
@ -7,17 +9,26 @@ if isdefined(Base, :Experimental) && isdefined(Base.Experimental, Symbol("@max_m
|
|||||||
@eval Base.Experimental.@max_methods 1
|
@eval Base.Experimental.@max_methods 1
|
||||||
end
|
end
|
||||||
|
|
||||||
const _current_plots_version = VersionNumber(
|
const _plots_project = Pkg.Types.read_project(normpath(@__DIR__, "..", "Project.toml"))
|
||||||
split(
|
const _current_plots_version = _plots_project.version
|
||||||
first(
|
const _plots_compats = _plots_project.compat
|
||||||
filter(
|
function _check_compat(sim::Module)
|
||||||
line -> occursin("version", line),
|
sim_str = string(sim)
|
||||||
readlines(normpath(@__DIR__, "..", "Project.toml")),
|
if !haskey(_plots_compats, sim_str)
|
||||||
),
|
return nothing
|
||||||
),
|
end
|
||||||
"\"",
|
be_v = Pkg.Types.read_project(joinpath(Base.pkgdir(sim), "Project.toml")).version
|
||||||
)[2],
|
be_c = _plots_compats[sim_str]
|
||||||
)
|
if be_c isa String # julia 1.6
|
||||||
|
if !(be_v in Pkg.Types.semver_spec(be_c))
|
||||||
|
@warn "$sim $be_v is not compatible with this version of Plots. The declared compatibility is $(be_c)."
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if isempty(intersect(be_v, be_c.val))
|
||||||
|
@warn "$sim $be_v is not compatible with this version of Plots. The declared compatibility is $(be_c.str)."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
using Reexport
|
using Reexport
|
||||||
|
|
||||||
|
|||||||
@ -32,7 +32,8 @@ const _arg_desc = KW(
|
|||||||
:line_z => "AbstractVector, Function `f(x,y,z) -> z_value`, or Function `f(x,y) -> z_value`, or nothing. z-values for each series line segment, which correspond to the color to be used from a linecolor gradient. Note that for N points, only the first N-1 values are used (one per line-segment).",
|
:line_z => "AbstractVector, Function `f(x,y,z) -> z_value`, or Function `f(x,y) -> z_value`, or nothing. z-values for each series line segment, which correspond to the color to be used from a linecolor gradient. Note that for N points, only the first N-1 values are used (one per line-segment).",
|
||||||
:fill_z => "Matrix{Float64} of the same size as z matrix, which specifies the color of the 3D surface; the default value is `nothing`.",
|
:fill_z => "Matrix{Float64} of the same size as z matrix, which specifies the color of the 3D surface; the default value is `nothing`.",
|
||||||
:levels => "Integer (number of contours) or AbstractVector (contour values). Determines contour levels for a contour type.",
|
:levels => "Integer (number of contours) or AbstractVector (contour values). Determines contour levels for a contour type.",
|
||||||
:orientation => "Symbol. Horizontal or vertical orientation for bar types. Values `:h`, `:hor`, `:horizontal` correspond to horizontal (sideways, anchored to y-axis), and `:v`, `:vert`, and `:vertical` correspond to vertical (the default).",
|
:permute => "Tuple{Symbol,Symbol}. Permutes data and axis properties of the axes given in the tuple. E.g. (:x, :y).",
|
||||||
|
:orientation => "Symbol. (deprecated) Horizontal or vertical orientation for bar types. Values `:h`, `:hor`, `:horizontal` correspond to horizontal (sideways, anchored to y-axis), and `:v`, `:vert`, and `:vertical` correspond to vertical (the default).",
|
||||||
:bar_position => "Symbol. Choose from `:overlay` (default), `:stack`. (warning: May not be implemented fully)",
|
:bar_position => "Symbol. Choose from `:overlay` (default), `:stack`. (warning: May not be implemented fully)",
|
||||||
:bar_width => "nothing or Number. Width of bars in data coordinates. When nothing, chooses based on x (or y when `orientation = :h`).",
|
:bar_width => "nothing or Number. Width of bars in data coordinates. When nothing, chooses based on x (or y when `orientation = :h`).",
|
||||||
:bar_edges => "Bool. Align bars to edges (true), or centers (the default)?",
|
:bar_edges => "Bool. Align bars to edges (true), or centers (the default)?",
|
||||||
@ -52,6 +53,7 @@ const _arg_desc = KW(
|
|||||||
:primary => "Bool. Does this count as a 'real series'? For example, you could have a path (primary), and a scatter (secondary) as 2 separate series, maybe with different data (see sticks recipe for an example). The secondary series will get the same color, etc as the primary.",
|
:primary => "Bool. Does this count as a 'real series'? For example, you could have a path (primary), and a scatter (secondary) as 2 separate series, maybe with different data (see sticks recipe for an example). The secondary series will get the same color, etc as the primary.",
|
||||||
:hover => "nothing or vector of strings. Text to display when hovering over each data point.",
|
:hover => "nothing or vector of strings. Text to display when hovering over each data point.",
|
||||||
:colorbar_entry => "Bool. Include this series in the color bar? Set to `false` to exclude.",
|
:colorbar_entry => "Bool. Include this series in the color bar? Set to `false` to exclude.",
|
||||||
|
:z_order => "Symbol or Integer. :front (default), :back or index of position where 1 is farest in the background.",
|
||||||
|
|
||||||
# plot args
|
# plot args
|
||||||
:plot_title => "String. Title for the whole plot (not the subplots)",
|
:plot_title => "String. Title for the whole plot (not the subplots)",
|
||||||
|
|||||||
62
src/args.jl
62
src/args.jl
@ -399,6 +399,8 @@ const _series_defaults = KW(
|
|||||||
:hover => nothing, # text to display when hovering over the data points
|
:hover => nothing, # text to display when hovering over the data points
|
||||||
:stride => (1, 1), # array stride for wireframe/surface, the first element is the row stride and the second is the column stride.
|
:stride => (1, 1), # array stride for wireframe/surface, the first element is the row stride and the second is the column stride.
|
||||||
:connections => nothing, # tuple of arrays to specifiy connectivity of a 3d mesh
|
:connections => nothing, # tuple of arrays to specifiy connectivity of a 3d mesh
|
||||||
|
:z_order => :front, # one of :front, :back or integer in 1:length(sp.series_list)
|
||||||
|
:permute => :none, # tuple of two symbols to be permuted
|
||||||
:extra_kwargs => Dict(),
|
:extra_kwargs => Dict(),
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -1347,7 +1349,12 @@ function processFontArg!(plotattributes::AKW, fontname::Symbol, arg)
|
|||||||
T = typeof(arg)
|
T = typeof(arg)
|
||||||
if T <: Font
|
if T <: Font
|
||||||
plotattributes[Symbol(fontname, :family)] = arg.family
|
plotattributes[Symbol(fontname, :family)] = arg.family
|
||||||
plotattributes[Symbol(fontname, :size)] = arg.pointsize
|
# TODO: this is neccessary in the transition from old fontsize to new font_pointsize and should be removed when it is completed
|
||||||
|
if in(Symbol(fontname, :size), _all_args)
|
||||||
|
plotattributes[Symbol(fontname, :size)] = arg.pointsize
|
||||||
|
else
|
||||||
|
plotattributes[Symbol(fontname, :_pointsize)] = arg.pointsize
|
||||||
|
end
|
||||||
plotattributes[Symbol(fontname, :halign)] = arg.halign
|
plotattributes[Symbol(fontname, :halign)] = arg.halign
|
||||||
plotattributes[Symbol(fontname, :valign)] = arg.valign
|
plotattributes[Symbol(fontname, :valign)] = arg.valign
|
||||||
plotattributes[Symbol(fontname, :rotation)] = arg.rotation
|
plotattributes[Symbol(fontname, :rotation)] = arg.rotation
|
||||||
@ -1368,7 +1375,11 @@ function processFontArg!(plotattributes::AKW, fontname::Symbol, arg)
|
|||||||
plotattributes[Symbol(fontname, :family)] = string(arg)
|
plotattributes[Symbol(fontname, :family)] = string(arg)
|
||||||
end
|
end
|
||||||
elseif typeof(arg) <: Integer
|
elseif typeof(arg) <: Integer
|
||||||
plotattributes[Symbol(fontname, :size)] = arg
|
if in(Symbol(fontname, :size), _all_args)
|
||||||
|
plotattributes[Symbol(fontname, :size)] = arg
|
||||||
|
else
|
||||||
|
plotattributes[Symbol(fontname, :_pointsize)] = arg
|
||||||
|
end
|
||||||
elseif typeof(arg) <: Real
|
elseif typeof(arg) <: Real
|
||||||
plotattributes[Symbol(fontname, :rotation)] = convert(Float64, arg)
|
plotattributes[Symbol(fontname, :rotation)] = convert(Float64, arg)
|
||||||
else
|
else
|
||||||
@ -1487,7 +1498,8 @@ function RecipesPipeline.preprocess_attributes!(plotattributes::AKW)
|
|||||||
end
|
end
|
||||||
|
|
||||||
# fonts
|
# fonts
|
||||||
for fontname in (:titlefont, :legendtitlefont, :plot_titlefont, :colorbar_titlefont)
|
for fontname in
|
||||||
|
(:titlefont, :legend_title_font, :plot_titlefont, :colorbar_titlefont, :legend_font)
|
||||||
args = RecipesPipeline.pop_kw!(plotattributes, fontname, ())
|
args = RecipesPipeline.pop_kw!(plotattributes, fontname, ())
|
||||||
for arg in wraptuple(args)
|
for arg in wraptuple(args)
|
||||||
processFontArg!(plotattributes, fontname, arg)
|
processFontArg!(plotattributes, fontname, arg)
|
||||||
@ -1575,7 +1587,11 @@ function RecipesPipeline.preprocess_attributes!(plotattributes::AKW)
|
|||||||
|
|
||||||
# warnings for moved recipes
|
# warnings for moved recipes
|
||||||
st = get(plotattributes, :seriestype, :path)
|
st = get(plotattributes, :seriestype, :path)
|
||||||
if st in (:boxplot, :violin, :density) && !isdefined(Main, :StatsPlots)
|
if st in (:boxplot, :violin, :density) &&
|
||||||
|
!haskey(
|
||||||
|
Base.loaded_modules,
|
||||||
|
Base.PkgId(Base.UUID("f3b207a7-027a-5e70-b257-86293d7955fd"), "StatsPlots"),
|
||||||
|
)
|
||||||
@warn(
|
@warn(
|
||||||
"seriestype $st has been moved to StatsPlots. To use: \`Pkg.add(\"StatsPlots\"); using StatsPlots\`"
|
"seriestype $st has been moved to StatsPlots. To use: \`Pkg.add(\"StatsPlots\"); using StatsPlots\`"
|
||||||
)
|
)
|
||||||
@ -1596,7 +1612,7 @@ function warn_on_unsupported_args(pkg::AbstractBackend, plotattributes)
|
|||||||
already_warned = get!(_already_warned, bend, Set{Symbol}())
|
already_warned = get!(_already_warned, bend, Set{Symbol}())
|
||||||
extra_kwargs = Dict{Symbol,Any}()
|
extra_kwargs = Dict{Symbol,Any}()
|
||||||
for k in keys(plotattributes)
|
for k in keys(plotattributes)
|
||||||
is_attr_supported(pkg, k) && continue
|
is_attr_supported(pkg, k) && !(k in keys(_deprecated_attributes)) && continue
|
||||||
k in _suppress_warnings && continue
|
k in _suppress_warnings && continue
|
||||||
default_value = default(k)
|
default_value = default(k)
|
||||||
if ismissing(default_value)
|
if ismissing(default_value)
|
||||||
@ -1610,9 +1626,16 @@ function warn_on_unsupported_args(pkg::AbstractBackend, plotattributes)
|
|||||||
get(plotattributes, :warn_on_unsupported, should_warn_on_unsupported(pkg))
|
get(plotattributes, :warn_on_unsupported, should_warn_on_unsupported(pkg))
|
||||||
for k in sort(collect(_to_warn))
|
for k in sort(collect(_to_warn))
|
||||||
push!(already_warned, k)
|
push!(already_warned, k)
|
||||||
@warn(
|
if k in keys(_deprecated_attributes)
|
||||||
"Keyword argument $k not supported with $pkg. Choose from: $(supported_attrs(pkg))"
|
@warn("""
|
||||||
)
|
Keyword argument `$k` is deprecated.
|
||||||
|
Please use `$(_deprecated_attributes[k])` instead.
|
||||||
|
""")
|
||||||
|
else
|
||||||
|
@warn(
|
||||||
|
"Keyword argument $k not supported with $pkg. Choose from: $(join(supported_attrs(pkg), ", "))"
|
||||||
|
)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return extra_kwargs
|
return extra_kwargs
|
||||||
@ -1957,29 +1980,6 @@ function _update_subplot_colors(sp::Subplot)
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
function _update_subplot_legend(sp::Subplot, plotattributes_in)
|
|
||||||
f_attr = NamedTuple(
|
|
||||||
k => plotattributes_in[Symbol(:legend_font_, k)] for
|
|
||||||
k in (:family, :pointsize, :valign, :halign, :rotation, :color) if
|
|
||||||
haskey(plotattributes_in, Symbol(:legend_font_, k))
|
|
||||||
)
|
|
||||||
#! format: off
|
|
||||||
match_attr = NamedTuple(
|
|
||||||
(
|
|
||||||
lk = Symbol(:legend_font_, k);
|
|
||||||
k =>
|
|
||||||
haskey(_match_map, lk) ? sp[lk] :
|
|
||||||
haskey(plotattributes_in, :legend_font) ?
|
|
||||||
getproperty(plotattributes_in[:legend_font], k) :
|
|
||||||
haskey(sp.attr, :legend_font) ?
|
|
||||||
getproperty(sp.attr[:legend_font], k) :
|
|
||||||
default(plotattributes_in, lk)
|
|
||||||
) for k in (:family, :pointsize, :valign, :halign, :rotation, :color)
|
|
||||||
)
|
|
||||||
#! format: on
|
|
||||||
sp.attr[:legend_font] = font(; merge(match_attr, f_attr)...)
|
|
||||||
end
|
|
||||||
|
|
||||||
function _update_axis(
|
function _update_axis(
|
||||||
plt::Plot,
|
plt::Plot,
|
||||||
sp::Subplot,
|
sp::Subplot,
|
||||||
|
|||||||
@ -675,6 +675,15 @@ end
|
|||||||
# these methods track the discrete (categorical) values which correspond to axis continuous values (cv)
|
# these methods track the discrete (categorical) values which correspond to axis continuous values (cv)
|
||||||
# whenever we have discrete values, we automatically set the ticks to match.
|
# whenever we have discrete values, we automatically set the ticks to match.
|
||||||
# we return (continuous_value, discrete_index)
|
# we return (continuous_value, discrete_index)
|
||||||
|
function discrete_value!(plotattributes, letter::Symbol, dv)
|
||||||
|
l = if plotattributes[:permute] !== :none
|
||||||
|
only(filter(!=(letter), plotattributes[:permute]))
|
||||||
|
else
|
||||||
|
letter
|
||||||
|
end
|
||||||
|
discrete_value!(plotattributes[:subplot][get_attr_symbol(l, :axis)], dv)
|
||||||
|
end
|
||||||
|
|
||||||
function discrete_value!(axis::Axis, dv)
|
function discrete_value!(axis::Axis, dv)
|
||||||
cv_idx = get(axis[:discrete_map], dv, -1)
|
cv_idx = get(axis[:discrete_map], dv, -1)
|
||||||
if cv_idx == -1
|
if cv_idx == -1
|
||||||
|
|||||||
@ -240,6 +240,8 @@ const _base_supported_args = [
|
|||||||
:discrete_values,
|
:discrete_values,
|
||||||
:projection,
|
:projection,
|
||||||
:show_empty_bins,
|
:show_empty_bins,
|
||||||
|
:z_order,
|
||||||
|
:permute,
|
||||||
]
|
]
|
||||||
|
|
||||||
function merge_with_base_supported(v::AVec)
|
function merge_with_base_supported(v::AVec)
|
||||||
@ -284,7 +286,7 @@ for s in (:attr, :seriestype, :marker, :style, :scale)
|
|||||||
v = Symbol("_", bend, "_", s)
|
v = Symbol("_", bend, "_", s)
|
||||||
@eval begin
|
@eval begin
|
||||||
$f(::$bend_type, $s::Symbol) = $s in $v
|
$f(::$bend_type, $s::Symbol) = $s in $v
|
||||||
$f2(::$bend_type) = $v
|
$f2(::$bend_type) = sort(collect($v))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -300,11 +302,23 @@ function _initialize_backend(pkg::AbstractBackend)
|
|||||||
@eval Main begin
|
@eval Main begin
|
||||||
import $sym
|
import $sym
|
||||||
export $sym
|
export $sym
|
||||||
|
$(_check_compat)($sym)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
_initialize_backend(pkg::GRBackend) = nothing
|
_initialize_backend(pkg::GRBackend) = nothing
|
||||||
|
|
||||||
|
function _initialize_backend(pkg::PlotlyBackend)
|
||||||
|
try
|
||||||
|
@eval Main begin
|
||||||
|
import PlotlyBase
|
||||||
|
end
|
||||||
|
_check_compat(PlotlyBase)
|
||||||
|
catch
|
||||||
|
@info "For saving to png with the Plotly backend PlotlyBase has to be installed."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# gr
|
# gr
|
||||||
|
|
||||||
@ -335,6 +349,7 @@ const _gr_attr = merge_with_base_supported([
|
|||||||
:fillrange,
|
:fillrange,
|
||||||
:fillcolor,
|
:fillcolor,
|
||||||
:fillalpha,
|
:fillalpha,
|
||||||
|
:fillstyle,
|
||||||
:bins,
|
:bins,
|
||||||
:layout,
|
:layout,
|
||||||
:title,
|
:title,
|
||||||
@ -423,16 +438,6 @@ is_marker_supported(::GRBackend, shape::Shape) = true
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# plotly
|
# plotly
|
||||||
|
|
||||||
function _initialize_backend(pkg::PlotlyBackend)
|
|
||||||
try
|
|
||||||
@eval Main begin
|
|
||||||
import PlotlyBase
|
|
||||||
end
|
|
||||||
catch
|
|
||||||
@info "For saving to png with the Plotly backend PlotlyBase has to be installed."
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
const _plotly_attr = merge_with_base_supported([
|
const _plotly_attr = merge_with_base_supported([
|
||||||
:annotations,
|
:annotations,
|
||||||
:legend_background_color,
|
:legend_background_color,
|
||||||
@ -945,6 +950,7 @@ const _unicodeplots_seriestype = [
|
|||||||
:heatmap,
|
:heatmap,
|
||||||
:contour,
|
:contour,
|
||||||
# :contour3d,
|
# :contour3d,
|
||||||
|
:permute,
|
||||||
:spy,
|
:spy,
|
||||||
:surface,
|
:surface,
|
||||||
:wireframe,
|
:wireframe,
|
||||||
@ -1317,7 +1323,6 @@ const _pgfplotsx_marker = [
|
|||||||
:pentagon,
|
:pentagon,
|
||||||
:hline,
|
:hline,
|
||||||
:vline,
|
:vline,
|
||||||
Shape,
|
|
||||||
]
|
]
|
||||||
const _pgfplotsx_scale = [:identity, :ln, :log2, :log10]
|
const _pgfplotsx_scale = [:identity, :ln, :log2, :log10]
|
||||||
is_marker_supported(::PGFPlotsXBackend, shape::Shape) = true
|
is_marker_supported(::PGFPlotsXBackend, shape::Shape) = true
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
# significant contributions by: @pkofod
|
# significant contributions by: @pkofod
|
||||||
|
|
||||||
# --------------------------------------------------------------------------------------
|
# --------------------------------------------------------------------------------------
|
||||||
|
# COV_EXCL_START
|
||||||
const _pgfplots_linestyles = KW(
|
const _pgfplots_linestyles = KW(
|
||||||
:solid => "solid",
|
:solid => "solid",
|
||||||
:dash => "dashed",
|
:dash => "dashed",
|
||||||
@ -740,3 +740,5 @@ function _display(plt::Plot{PGFPlotsBackend})
|
|||||||
# cleanup
|
# cleanup
|
||||||
PGFPlots.cleanup(plt.o)
|
PGFPlots.cleanup(plt.o)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# COV_EXCL_STOP
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
# https://github.com/mbaz/Gaston.
|
# https://github.com/mbaz/Gaston.
|
||||||
|
|
||||||
# --------------------------------------------
|
should_warn_on_unsupported(::GastonBackend) = false
|
||||||
# These functions are called by Plots
|
|
||||||
# --------------------------------------------
|
|
||||||
|
|
||||||
# Create the window/figure for this backend.
|
# Create the window/figure for this backend.
|
||||||
function _create_backend_figure(plt::Plot{GastonBackend})
|
function _create_backend_figure(plt::Plot{GastonBackend})
|
||||||
@ -112,7 +110,7 @@ function gaston_saveopts(plt::Plot{GastonBackend})
|
|||||||
|
|
||||||
# Scale all plot elements to match Plots.jl DPI standard
|
# Scale all plot elements to match Plots.jl DPI standard
|
||||||
scaling = plt.attr[:dpi] / Plots.DPI
|
scaling = plt.attr[:dpi] / Plots.DPI
|
||||||
push!(saveopts, "fontscale $scaling lw $scaling dl $scaling ps $scaling")
|
push!(saveopts, "fontscale $scaling lw $scaling dl $scaling") # ps $scaling
|
||||||
|
|
||||||
return join(saveopts, " ")
|
return join(saveopts, " ")
|
||||||
end
|
end
|
||||||
@ -246,10 +244,9 @@ function gaston_add_series(plt::Plot{GastonBackend}, series::Series)
|
|||||||
if (lx = length(x)) == 2 && lx != nc
|
if (lx = length(x)) == 2 && lx != nc
|
||||||
x = collect(range(x[1], x[2], length = nc))
|
x = collect(range(x[1], x[2], length = nc))
|
||||||
end
|
end
|
||||||
elseif st == :heatmap
|
|
||||||
length(x) == size(z, 2) + 1 && (x = @view x[1:(end - 1)])
|
|
||||||
length(y) == size(z, 1) + 1 && (y = @view y[1:(end - 1)])
|
|
||||||
end
|
end
|
||||||
|
length(x) == size(z, 2) + 1 && (x = (x[1:(end - 1)] + x[2:end]) / 2)
|
||||||
|
length(y) == size(z, 1) + 1 && (y = (y[1:(end - 1)] + y[2:end]) / 2)
|
||||||
end
|
end
|
||||||
if st == :mesh3d
|
if st == :mesh3d
|
||||||
x, y, z = mesh3d_triangles(x, y, z, series[:connections])
|
x, y, z = mesh3d_triangles(x, y, z, series[:connections])
|
||||||
|
|||||||
@ -1272,7 +1272,7 @@ function gr_get_legend_geometry(viewport_plotarea, sp)
|
|||||||
GR.restorestate()
|
GR.restorestate()
|
||||||
end
|
end
|
||||||
|
|
||||||
legend_width_factor = 0.02
|
legend_width_factor = (viewport_plotarea[2] - viewport_plotarea[1]) / 45 # Determines the width of legend box
|
||||||
legend_textw = legendw
|
legend_textw = legendw
|
||||||
legend_rightw = legend_width_factor
|
legend_rightw = legend_width_factor
|
||||||
legend_leftw = legend_width_factor * 4
|
legend_leftw = legend_width_factor * 4
|
||||||
|
|||||||
@ -13,7 +13,7 @@ Add in functionality to Plots.jl:
|
|||||||
:aspect_ratio,
|
:aspect_ratio,
|
||||||
=#
|
=#
|
||||||
|
|
||||||
# ---------------------------------------------------------------------------
|
should_warn_on_unsupported(::InspectDRBackend) = false
|
||||||
|
|
||||||
is_marker_supported(::InspectDRBackend, shape::Shape) = true
|
is_marker_supported(::InspectDRBackend, shape::Shape) = true
|
||||||
|
|
||||||
|
|||||||
@ -162,7 +162,6 @@ function (pgfx_plot::PGFPlotsXPlot)(plt::Plot{PGFPlotsXBackend})
|
|||||||
"anchor" => "north west",
|
"anchor" => "north west",
|
||||||
"xshift" => string(dx),
|
"xshift" => string(dx),
|
||||||
"yshift" => string(-dy),
|
"yshift" => string(-dy),
|
||||||
"clip mode" => "individual",
|
|
||||||
)
|
)
|
||||||
sp_width > 0 * mm ? push!(axis_opt, "width" => string(axis_width)) : nothing
|
sp_width > 0 * mm ? push!(axis_opt, "width" => string(axis_width)) : nothing
|
||||||
sp_height > 0 * mm ? push!(axis_opt, "height" => string(axis_height)) : nothing
|
sp_height > 0 * mm ? push!(axis_opt, "height" => string(axis_height)) : nothing
|
||||||
@ -207,8 +206,8 @@ function (pgfx_plot::PGFPlotsXPlot)(plt::Plot{PGFPlotsXBackend})
|
|||||||
|
|
||||||
if hascolorbar(sp)
|
if hascolorbar(sp)
|
||||||
cticks = get_colorbar_ticks(sp)[2]
|
cticks = get_colorbar_ticks(sp)[2]
|
||||||
colorbar_style = PGFPlotsX.Options("ylabel" => sp[:colorbar_title])
|
|
||||||
if sp[:colorbar] === :top
|
if sp[:colorbar] === :top
|
||||||
|
colorbar_style = PGFPlotsX.Options("xlabel" => sp[:colorbar_title])
|
||||||
push!(
|
push!(
|
||||||
colorbar_style,
|
colorbar_style,
|
||||||
"at" => string((0.5, 1.05)),
|
"at" => string((0.5, 1.05)),
|
||||||
@ -218,6 +217,7 @@ function (pgfx_plot::PGFPlotsXPlot)(plt::Plot{PGFPlotsXBackend})
|
|||||||
"xticklabel style" => pgfx_get_colorbar_ticklabel_style(sp),
|
"xticklabel style" => pgfx_get_colorbar_ticklabel_style(sp),
|
||||||
)
|
)
|
||||||
else
|
else
|
||||||
|
colorbar_style = PGFPlotsX.Options("ylabel" => sp[:colorbar_title])
|
||||||
push!(
|
push!(
|
||||||
colorbar_style,
|
colorbar_style,
|
||||||
"ytick" => string("{", join(cticks, ","), "}"),
|
"ytick" => string("{", join(cticks, ","), "}"),
|
||||||
@ -404,6 +404,9 @@ function pgfx_add_series!(::Val{:path}, axis, series_opt, series, series_func, o
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
if opt[:label] == ""
|
||||||
|
push!(arrow_opt, "forget plot" => nothing)
|
||||||
|
end
|
||||||
if arrow.side == :head
|
if arrow.side == :head
|
||||||
x_arrow = opt[:x][rng][(end - 1):end]
|
x_arrow = opt[:x][rng][(end - 1):end]
|
||||||
y_arrow = opt[:y][rng][(end - 1):end]
|
y_arrow = opt[:y][rng][(end - 1):end]
|
||||||
@ -427,6 +430,7 @@ function pgfx_add_series!(::Val{:path}, axis, series_opt, series, series_func, o
|
|||||||
:v => [y_arrow[i] - y_arrow[i - 1] for i in 2:2:lastindex(y_arrow)],
|
:v => [y_arrow[i] - y_arrow[i - 1] for i in 2:2:lastindex(y_arrow)],
|
||||||
])
|
])
|
||||||
arrow_plot = series_func(merge(series_opt, arrow_opt), coordinates)
|
arrow_plot = series_func(merge(series_opt, arrow_opt), coordinates)
|
||||||
|
push!(series_opt, "forget plot" => nothing)
|
||||||
push!(axis, arrow_plot)
|
push!(axis, arrow_plot)
|
||||||
coordinates = PGFPlotsX.Table(x_path, y_path)
|
coordinates = PGFPlotsX.Table(x_path, y_path)
|
||||||
segment_plot = series_func(merge(series_opt, segment_opt), coordinates)
|
segment_plot = series_func(merge(series_opt, segment_opt), coordinates)
|
||||||
@ -1056,11 +1060,7 @@ function pgfx_add_annotation!(
|
|||||||
push!(
|
push!(
|
||||||
o,
|
o,
|
||||||
join([
|
join([
|
||||||
raw"""
|
"\\node",
|
||||||
\begin{scope}
|
|
||||||
\clip \pgfextra{\pgfplotspathaxisoutline};
|
|
||||||
\node
|
|
||||||
""",
|
|
||||||
sprint(
|
sprint(
|
||||||
PGFPlotsX.print_tex,
|
PGFPlotsX.print_tex,
|
||||||
merge(
|
merge(
|
||||||
@ -1079,7 +1079,6 @@ function pgfx_add_annotation!(
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
string(" at (", cs, x, ",", y, ") {", val.str, "};"),
|
string(" at (", cs, x, ",", y, ") {", val.str, "};"),
|
||||||
"\\end{scope}",
|
|
||||||
]),
|
]),
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -752,14 +752,14 @@ function plotly_series(plt::Plot, series::Series)
|
|||||||
end
|
end
|
||||||
|
|
||||||
plotly_polar!(plotattributes_out, series)
|
plotly_polar!(plotattributes_out, series)
|
||||||
plotly_hover!(plotattributes_out, series[:hover])
|
plotly_adjust_hover_label!(plotattributes_out, series[:hover])
|
||||||
|
|
||||||
return [plotattributes_out]
|
return [merge(plotattributes_out, series[:extra_kwargs])]
|
||||||
end
|
end
|
||||||
|
|
||||||
function plotly_series_shapes(plt::Plot, series::Series, clims)
|
function plotly_series_shapes(plt::Plot, series::Series, clims)
|
||||||
segments = series_segments(series; check = true)
|
segments = series_segments(series; check = true)
|
||||||
plotattributes_outs = Vector{KW}(undef, length(segments))
|
plotattributes_outs = [KW() for _ in 1:length(segments)]
|
||||||
|
|
||||||
# TODO: create a plotattributes_out for each polygon
|
# TODO: create a plotattributes_out for each polygon
|
||||||
# x, y = series[:x], series[:y]
|
# x, y = series[:x], series[:y]
|
||||||
@ -807,8 +807,8 @@ function plotly_series_shapes(plt::Plot, series::Series, clims)
|
|||||||
end
|
end
|
||||||
plotattributes_out[:showlegend] = k == 1 ? should_add_to_legend(series) : false
|
plotattributes_out[:showlegend] = k == 1 ? should_add_to_legend(series) : false
|
||||||
plotly_polar!(plotattributes_out, series)
|
plotly_polar!(plotattributes_out, series)
|
||||||
plotly_hover!(plotattributes_out, _cycle(series[:hover], i))
|
plotly_adjust_hover_label!(plotattributes_out, _cycle(series[:hover], i))
|
||||||
plotattributes_outs[k] = plotattributes_out
|
plotattributes_outs[k] = merge(plotattributes_out, series[:extra_kwargs])
|
||||||
end
|
end
|
||||||
if series[:fill_z] !== nothing
|
if series[:fill_z] !== nothing
|
||||||
push!(plotattributes_outs, plotly_colorbar_hack(series, plotattributes_base, :fill))
|
push!(plotattributes_outs, plotly_colorbar_hack(series, plotattributes_base, :fill))
|
||||||
@ -931,7 +931,7 @@ function plotly_series_segments(series::Series, plotattributes_base::KW, x, y, z
|
|||||||
end
|
end
|
||||||
|
|
||||||
plotly_polar!(plotattributes_out, series)
|
plotly_polar!(plotattributes_out, series)
|
||||||
plotly_hover!(plotattributes_out, _cycle(series[:hover], rng))
|
plotly_adjust_hover_label!(plotattributes_out, _cycle(series[:hover], rng))
|
||||||
|
|
||||||
if hasfillrange
|
if hasfillrange
|
||||||
# if hasfillrange is true, return two dictionaries (one for original
|
# if hasfillrange is true, return two dictionaries (one for original
|
||||||
@ -969,6 +969,7 @@ function plotly_series_segments(series::Series, plotattributes_base::KW, x, y, z
|
|||||||
else
|
else
|
||||||
plotattributes_outs[k] = plotattributes_out
|
plotattributes_outs[k] = plotattributes_out
|
||||||
end
|
end
|
||||||
|
plotattributes_outs[k] = merge(plotattributes_outs[k], series[:extra_kwargs])
|
||||||
end
|
end
|
||||||
|
|
||||||
if series[:line_z] !== nothing
|
if series[:line_z] !== nothing
|
||||||
@ -1019,14 +1020,16 @@ function plotly_polar!(plotattributes_out::KW, series::Series)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function plotly_hover!(plotattributes_out::KW, hover)
|
function plotly_adjust_hover_label!(plotattributes_out::KW, hover)
|
||||||
# hover text
|
if hover === nothing
|
||||||
if hover === nothing || all(in([:none, false]), hover)
|
return nothing
|
||||||
|
elseif all(in([:none, false]), hover)
|
||||||
plotattributes_out[:hoverinfo] = "none"
|
plotattributes_out[:hoverinfo] = "none"
|
||||||
elseif any(!isnothing, hover)
|
elseif any(!isnothing, hover)
|
||||||
plotattributes_out[:hoverinfo] = "text"
|
plotattributes_out[:hoverinfo] = "text"
|
||||||
plotattributes_out[:text] = hover
|
plotattributes_out[:text] = hover
|
||||||
end
|
end
|
||||||
|
return nothing
|
||||||
end
|
end
|
||||||
|
|
||||||
# get a list of dictionaries, each representing the series params
|
# get a list of dictionaries, each representing the series params
|
||||||
|
|||||||
@ -1297,8 +1297,8 @@ function _before_layout_calcs(plt::Plot{PyPlotBackend})
|
|||||||
fontProperties = PyPlot.PyCall.PyDict(
|
fontProperties = PyPlot.PyCall.PyDict(
|
||||||
Dict(
|
Dict(
|
||||||
"family" => axis[:tickfontfamily],
|
"family" => axis[:tickfontfamily],
|
||||||
"math_fontfamily" =>
|
# "math_fontfamily" =>
|
||||||
py_get_matching_math_font(axis[:tickfontfamily]),
|
# py_get_matching_math_font(axis[:tickfontfamily]),
|
||||||
"size" => py_thickness_scale(plt, axis[:tickfontsize]),
|
"size" => py_thickness_scale(plt, axis[:tickfontsize]),
|
||||||
"rotation" => axis[:tickfontrotation],
|
"rotation" => axis[:tickfontrotation],
|
||||||
),
|
),
|
||||||
|
|||||||
@ -1,8 +1,5 @@
|
|||||||
# https://github.com/JuliaPlots/UnicodePlots.jl
|
# https://github.com/JuliaPlots/UnicodePlots.jl
|
||||||
|
|
||||||
should_warn_on_unsupported(::UnicodePlotsBackend) = false
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------------------
|
|
||||||
const _canvas_map = (
|
const _canvas_map = (
|
||||||
braille = UnicodePlots.BrailleCanvas,
|
braille = UnicodePlots.BrailleCanvas,
|
||||||
density = UnicodePlots.DensityCanvas,
|
density = UnicodePlots.DensityCanvas,
|
||||||
@ -13,11 +10,10 @@ const _canvas_map = (
|
|||||||
dot = UnicodePlots.DotCanvas,
|
dot = UnicodePlots.DotCanvas,
|
||||||
)
|
)
|
||||||
|
|
||||||
# do all the magic here... build it all at once,
|
should_warn_on_unsupported(::UnicodePlotsBackend) = false
|
||||||
# since we need to know about all the series at the very beginning
|
|
||||||
function unicodeplots_rebuild(plt::Plot{UnicodePlotsBackend})
|
|
||||||
plt.o = UnicodePlots.Plot[]
|
|
||||||
|
|
||||||
|
function _before_layout_calcs(plt::Plot{UnicodePlotsBackend})
|
||||||
|
plt.o = UnicodePlots.Plot[]
|
||||||
up_width = UnicodePlots.DEFAULT_WIDTH[]
|
up_width = UnicodePlots.DEFAULT_WIDTH[]
|
||||||
up_height = UnicodePlots.DEFAULT_HEIGHT[]
|
up_height = UnicodePlots.DEFAULT_HEIGHT[]
|
||||||
|
|
||||||
@ -162,6 +158,10 @@ function addUnicodeSeries!(
|
|||||||
series[:x], series[:y]
|
series[:x], series[:y]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if ispolar(sp) || ispolar(series)
|
||||||
|
return UnicodePlots.polarplot(x, y)
|
||||||
|
end
|
||||||
|
|
||||||
# special handling (src/interface)
|
# special handling (src/interface)
|
||||||
fix_ar = get(se_kw, :fix_ar, true)
|
fix_ar = get(se_kw, :fix_ar, true)
|
||||||
if st === :histogram2d
|
if st === :histogram2d
|
||||||
@ -254,45 +254,56 @@ end
|
|||||||
|
|
||||||
# ------------------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
# since this is such a hack, it's only callable using `png`...
|
function _show(io::IO, ::MIME"image/png", plt::Plot{UnicodePlotsBackend})
|
||||||
# should error during normal `show`
|
prepare_output(plt)
|
||||||
function png(plt::Plot{UnicodePlotsBackend}, fn::AbstractString)
|
nr, nc = size(plt.layout)
|
||||||
fn = addExtension(fn, "png")
|
s1 = zeros(Int, nr, nc)
|
||||||
|
s2 = zeros(Int, nr, nc)
|
||||||
@static if Sys.isapple()
|
canvas_type = nothing
|
||||||
# make some whitespace and show the plot
|
imgs = []
|
||||||
println("\n\n\n\n\n\n")
|
sps = 0
|
||||||
gui(plt)
|
for r in 1:nr
|
||||||
sleep(0.5)
|
for c in 1:nc
|
||||||
# use osx screen capture when my terminal is maximized
|
if (l = plt.layout[r, c]) isa GridLayout && size(l) != (1, 1)
|
||||||
# and cursor starts at the bottom (I know, right?)
|
error("Plots(UnicodePlots): complex nested layout is currently unsupported")
|
||||||
run(`screencapture -R50,600,700,420 $fn`)
|
else
|
||||||
return
|
img = UnicodePlots.png_image(plt.o[sps += 1])
|
||||||
elseif Sys.islinux()
|
canvas_type = eltype(img)
|
||||||
run(`clear`)
|
h, w = size(img)
|
||||||
gui(plt)
|
s1[r, c] = h
|
||||||
win = if "WINDOWID" in keys(ENV)
|
s2[r, c] = w
|
||||||
ENV["WINDOWID"]
|
push!(imgs, img)
|
||||||
else
|
end
|
||||||
readchomp(`xdotool getactivewindow`)
|
|
||||||
end
|
end
|
||||||
run(`import -window $win $fn`)
|
|
||||||
return
|
|
||||||
end
|
end
|
||||||
|
if canvas_type !== nothing
|
||||||
error(
|
m1 = maximum(s1; dims = 2)
|
||||||
"Can only savepng on MacOS or Linux with UnicodePlots " *
|
m2 = maximum(s2; dims = 1)
|
||||||
"(though even then I wouldn't do it)",
|
img = zeros(canvas_type, sum(m1), sum(m2))
|
||||||
)
|
sps = 0
|
||||||
|
n1 = 1
|
||||||
|
for r in 1:nr
|
||||||
|
n2 = 1
|
||||||
|
for c in 1:nc
|
||||||
|
sp = imgs[sps += 1]
|
||||||
|
h, w = size(sp)
|
||||||
|
img[n1:(n1 + (h - 1)), n2:(n2 + (w - 1))] = sp
|
||||||
|
n2 += m2[c]
|
||||||
|
end
|
||||||
|
n1 += m1[r]
|
||||||
|
end
|
||||||
|
stream = UnicodePlots.FileIO.Stream{UnicodePlots.FileIO.format"PNG"}(io)
|
||||||
|
UnicodePlots.FileIO.save(stream, img)
|
||||||
|
end
|
||||||
|
nothing
|
||||||
end
|
end
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------------------
|
|
||||||
Base.show(plt::Plot{UnicodePlotsBackend}) = show(stdout, plt)
|
Base.show(plt::Plot{UnicodePlotsBackend}) = show(stdout, plt)
|
||||||
Base.show(io::IO, plt::Plot{UnicodePlotsBackend}) = _show(io, MIME("text/plain"), plt)
|
Base.show(io::IO, plt::Plot{UnicodePlotsBackend}) = _show(io, MIME("text/plain"), plt)
|
||||||
|
|
||||||
# NOTE: _show(...) must be kept for Base.showable (src/output.jl)
|
# NOTE: _show(...) must be kept for Base.showable (src/output.jl)
|
||||||
function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
||||||
unicodeplots_rebuild(plt)
|
prepare_output(plt)
|
||||||
nr, nc = size(plt.layout)
|
nr, nc = size(plt.layout)
|
||||||
if nr == 1 && nc == 1 # fast path
|
if nr == 1 && nc == 1 # fast path
|
||||||
n = length(plt.o)
|
n = length(plt.o)
|
||||||
@ -301,7 +312,6 @@ function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
|||||||
i < n && println(io)
|
i < n && println(io)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
re_ansi = r"\e\[[0-9;]*[a-zA-Z]" # m: color, [a-zA-Z]: all escape sequences
|
|
||||||
have_color = Base.get_have_color()
|
have_color = Base.get_have_color()
|
||||||
buf = IOContext(PipeBuffer(), :color => have_color)
|
buf = IOContext(PipeBuffer(), :color => have_color)
|
||||||
lines_colored = Array{Union{Nothing,Vector{String}}}(undef, nr, nc)
|
lines_colored = Array{Union{Nothing,Vector{String}}}(undef, nr, nc)
|
||||||
@ -312,9 +322,10 @@ function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
|||||||
for r in 1:nr
|
for r in 1:nr
|
||||||
lmax = 0
|
lmax = 0
|
||||||
for c in 1:nc
|
for c in 1:nc
|
||||||
l = plt.layout[r, c]
|
if (l = plt.layout[r, c]) isa GridLayout && size(l) != (1, 1)
|
||||||
if l isa GridLayout && size(l) != (1, 1)
|
error(
|
||||||
@error "Plots(UnicodePlots): complex nested layout is currently unsupported"
|
"Plots(UnicodePlots): complex nested layout is currently unsupported",
|
||||||
|
)
|
||||||
else
|
else
|
||||||
if get(l.attr, :blank, false)
|
if get(l.attr, :blank, false)
|
||||||
lines_colored[r, c] = lines_uncolored[r, c] = nothing
|
lines_colored[r, c] = lines_uncolored[r, c] = nothing
|
||||||
@ -324,7 +335,7 @@ function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
|||||||
colored = read(buf, String)
|
colored = read(buf, String)
|
||||||
lines_colored[r, c] = lu = lc = split(colored, '\n')
|
lines_colored[r, c] = lu = lc = split(colored, '\n')
|
||||||
if have_color
|
if have_color
|
||||||
uncolored = replace(colored, re_ansi => "")
|
uncolored = UnicodePlots.no_ansi_escape(colored)
|
||||||
lines_uncolored[r, c] = lu = split(uncolored, '\n')
|
lines_uncolored[r, c] = lu = split(uncolored, '\n')
|
||||||
end
|
end
|
||||||
lmax = max(length(lc), lmax)
|
lmax = max(length(lc), lmax)
|
||||||
@ -356,4 +367,7 @@ function _show(io::IO, ::MIME"text/plain", plt::Plot{UnicodePlotsBackend})
|
|||||||
end
|
end
|
||||||
|
|
||||||
# we only support MIME"text/plain", hence display(...) falls back to plain-text on stdout
|
# we only support MIME"text/plain", hence display(...) falls back to plain-text on stdout
|
||||||
_display(plt::Plot{UnicodePlotsBackend}) = (show(stdout, plt); println(stdout))
|
function _display(plt::Plot{UnicodePlotsBackend})
|
||||||
|
show(stdout, plt)
|
||||||
|
println(stdout)
|
||||||
|
end
|
||||||
|
|||||||
@ -159,10 +159,15 @@ function scale!(shape::Shape, x::Real, y::Real = x, c = center(shape))
|
|||||||
shape
|
shape
|
||||||
end
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
scale(shape, x, y = x, c = center(shape))
|
||||||
|
scale!(shape, x, y = x, c = center(shape))
|
||||||
|
|
||||||
|
Scale shape by a factor.
|
||||||
|
"""
|
||||||
scale(shape::Shape, x::Real, y::Real = x, c = center(shape)) =
|
scale(shape::Shape, x::Real, y::Real = x, c = center(shape)) =
|
||||||
scale!(deepcopy(shape), x, y, c)
|
scale!(deepcopy(shape), x, y, c)
|
||||||
|
|
||||||
"translate a Shape in space"
|
|
||||||
function translate!(shape::Shape, x::Real, y::Real = x)
|
function translate!(shape::Shape, x::Real, y::Real = x)
|
||||||
sx, sy = coords(shape)
|
sx, sy = coords(shape)
|
||||||
for i in eachindex(sx)
|
for i in eachindex(sx)
|
||||||
@ -172,22 +177,27 @@ function translate!(shape::Shape, x::Real, y::Real = x)
|
|||||||
shape
|
shape
|
||||||
end
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
translate(shape, x, y = x)
|
||||||
|
translate!(shape, x, y = x)
|
||||||
|
|
||||||
|
Translate a Shape in space.
|
||||||
|
"""
|
||||||
translate(shape::Shape, x::Real, y::Real = x) = translate!(deepcopy(shape), x, y)
|
translate(shape::Shape, x::Real, y::Real = x) = translate!(deepcopy(shape), x, y)
|
||||||
|
|
||||||
rotate_x(x::Real, y::Real, Θ::Real, centerx::Real, centery::Real) =
|
rotate_x(x::Real, y::Real, θ::Real, centerx::Real, centery::Real) =
|
||||||
((x - centerx) * cos(Θ) - (y - centery) * sin(Θ) + centerx)
|
((x - centerx) * cos(θ) - (y - centery) * sin(θ) + centerx)
|
||||||
|
|
||||||
rotate_y(x::Real, y::Real, Θ::Real, centerx::Real, centery::Real) =
|
rotate_y(x::Real, y::Real, θ::Real, centerx::Real, centery::Real) =
|
||||||
((y - centery) * cos(Θ) + (x - centerx) * sin(Θ) + centery)
|
((y - centery) * cos(θ) + (x - centerx) * sin(θ) + centery)
|
||||||
|
|
||||||
rotate(x::Real, y::Real, θ::Real, c = center(shape)) =
|
rotate(x::Real, y::Real, θ::Real, c) = (rotate_x(x, y, θ, c...), rotate_y(x, y, θ, c...))
|
||||||
(rotate_x(x, y, Θ, c...), rotate_y(x, y, Θ, c...))
|
|
||||||
|
|
||||||
function rotate!(shape::Shape, Θ::Real, c = center(shape))
|
function rotate!(shape::Shape, θ::Real, c = center(shape))
|
||||||
x, y = coords(shape)
|
x, y = coords(shape)
|
||||||
for i in eachindex(x)
|
for i in eachindex(x)
|
||||||
xi = rotate_x(x[i], y[i], Θ, c...)
|
xi = rotate_x(x[i], y[i], θ, c...)
|
||||||
yi = rotate_y(x[i], y[i], Θ, c...)
|
yi = rotate_y(x[i], y[i], θ, c...)
|
||||||
x[i], y[i] = xi, yi
|
x[i], y[i] = xi, yi
|
||||||
end
|
end
|
||||||
shape
|
shape
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
|
|
||||||
|
const _deprecated_attributes = Dict{Symbol,Symbol}(:orientation => :permute)
|
||||||
const _all_defaults = KW[_series_defaults, _plot_defaults, _subplot_defaults]
|
const _all_defaults = KW[_series_defaults, _plot_defaults, _subplot_defaults]
|
||||||
|
|
||||||
const _initial_defaults = deepcopy(_all_defaults)
|
const _initial_defaults = deepcopy(_all_defaults)
|
||||||
@ -41,29 +42,27 @@ const _initial_fontsizes =
|
|||||||
const _internal_args =
|
const _internal_args =
|
||||||
[:plot_object, :series_plotindex, :markershape_to_add, :letter, :idxfilter]
|
[:plot_object, :series_plotindex, :markershape_to_add, :letter, :idxfilter]
|
||||||
|
|
||||||
const _axis_args = sort(union(collect(keys(_axis_defaults))))
|
const _axis_args = Set(keys(_axis_defaults))
|
||||||
const _series_args = sort(union(collect(keys(_series_defaults))))
|
const _series_args = Set(keys(_series_defaults))
|
||||||
const _subplot_args = sort(union(collect(keys(_subplot_defaults))))
|
const _subplot_args = Set(keys(_subplot_defaults))
|
||||||
const _plot_args = sort(union(collect(keys(_plot_defaults))))
|
const _plot_args = Set(keys(_plot_defaults))
|
||||||
|
|
||||||
const _magic_axis_args = [:axis, :tickfont, :guidefont, :grid, :minorgrid]
|
const _magic_axis_args = [:axis, :tickfont, :guidefont, :grid, :minorgrid]
|
||||||
const _magic_subplot_args =
|
const _magic_subplot_args =
|
||||||
[:title_font, :legend_font, :legend_title_font, :plot_title_font, :colorbar_titlefont]
|
[:title_font, :legend_font, :legend_title_font, :plot_title_font, :colorbar_titlefont]
|
||||||
const _magic_series_args = [:line, :marker, :fill]
|
const _magic_series_args = [:line, :marker, :fill]
|
||||||
const _all_magic_args =
|
const _all_magic_args =
|
||||||
sort(union(_magic_axis_args, _magic_series_args, _magic_subplot_args))
|
Set(union(_magic_axis_args, _magic_series_args, _magic_subplot_args))
|
||||||
|
|
||||||
const _all_axis_args = sort(union([_axis_args; _magic_axis_args]))
|
const _all_axis_args = union(_axis_args, _magic_axis_args)
|
||||||
const _all_subplot_args = sort(union([_subplot_args; _magic_subplot_args]))
|
const _lettered_all_axis_args =
|
||||||
const _all_series_args = sort(union([_series_args; _magic_series_args]))
|
Set([Symbol(letter, kw) for letter in (:x, :y, :z) for kw in _all_axis_args])
|
||||||
|
const _all_subplot_args = union(_subplot_args, _magic_subplot_args)
|
||||||
|
const _all_series_args = union(_series_args, _magic_series_args)
|
||||||
const _all_plot_args = _plot_args
|
const _all_plot_args = _plot_args
|
||||||
|
|
||||||
const _all_args = sort(union([
|
const _all_args =
|
||||||
_all_axis_args
|
union(_lettered_all_axis_args, _all_subplot_args, _all_series_args, _all_plot_args)
|
||||||
_all_subplot_args
|
|
||||||
_all_series_args
|
|
||||||
_all_plot_args
|
|
||||||
]))
|
|
||||||
|
|
||||||
# add all pluralized forms to the _keyAliases dict
|
# add all pluralized forms to the _keyAliases dict
|
||||||
for arg in _all_args
|
for arg in _all_args
|
||||||
|
|||||||
@ -1273,12 +1273,30 @@ const _examples = PlotExample[
|
|||||||
end
|
end
|
||||||
)],
|
)],
|
||||||
),
|
),
|
||||||
|
PlotExample( # 58
|
||||||
|
"Stacked area chart",
|
||||||
|
"""
|
||||||
|
`areaplot` draws stacked area plots.
|
||||||
|
""",
|
||||||
|
[
|
||||||
|
:(
|
||||||
|
begin
|
||||||
|
areaplot(
|
||||||
|
1:3,
|
||||||
|
[1 2 3; 7 8 9; 4 5 6],
|
||||||
|
seriescolor = [:red :green :blue],
|
||||||
|
fillalpha = [0.2 0.3 0.4],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
# Some constants for PlotDocs and PlotReferenceImages
|
# Some constants for PlotDocs and PlotReferenceImages
|
||||||
_animation_examples = [2, 31]
|
_animation_examples = [2, 31]
|
||||||
_backend_skips = Dict(
|
_backend_skips = Dict(
|
||||||
:gr => [25, 30],
|
:gr => [30],
|
||||||
:pyplot => [2, 25, 30, 31, 49, 55, 56],
|
:pyplot => [2, 25, 30, 31, 49, 55, 56],
|
||||||
:plotlyjs => [2, 21, 24, 25, 30, 31, 49, 50, 51, 55, 56],
|
:plotlyjs => [2, 21, 24, 25, 30, 31, 49, 50, 51, 55, 56],
|
||||||
:pgfplotsx => [
|
:pgfplotsx => [
|
||||||
@ -1299,8 +1317,8 @@ _backend_skips = Dict(
|
|||||||
16, # nested layout unsupported
|
16, # nested layout unsupported
|
||||||
21, # custom markers unsupported
|
21, # custom markers unsupported
|
||||||
26, # nested layout unsupported
|
26, # nested layout unsupported
|
||||||
27, # polar plots unsupported
|
|
||||||
29, # nested layout unsupported
|
29, # nested layout unsupported
|
||||||
|
31, # nested layout unsupported
|
||||||
33, # grid lines unsupported
|
33, # grid lines unsupported
|
||||||
34, # framestyle unsupported
|
34, # framestyle unsupported
|
||||||
37, # ribbons / filled unsupported
|
37, # ribbons / filled unsupported
|
||||||
|
|||||||
@ -49,6 +49,9 @@ function _ijulia_display_dict(plt::Plot)
|
|||||||
mime = "text/html"
|
mime = "text/html"
|
||||||
out[mime] = sprint(show, MIME(mime), plt)
|
out[mime] = sprint(show, MIME(mime), plt)
|
||||||
_ijulia__extra_mime_info!(plt, out)
|
_ijulia__extra_mime_info!(plt, out)
|
||||||
|
elseif output_type == :pdf
|
||||||
|
mime = "application/pdf"
|
||||||
|
out[mime] = base64encode(show, MIME(mime), plt)
|
||||||
else
|
else
|
||||||
error("Unsupported output type $output_type")
|
error("Unsupported output type $output_type")
|
||||||
end
|
end
|
||||||
|
|||||||
@ -4,8 +4,7 @@ legend_pos_from_angle(theta, xmin, xcenter, xmax, ymin, ycenter, ymax, inout)
|
|||||||
```
|
```
|
||||||
|
|
||||||
Return `(x,y)` at an angle `theta` degrees from
|
Return `(x,y)` at an angle `theta` degrees from
|
||||||
`(xcenter,ycenter)` on a rectangle defined by (`xmin`,
|
`(xcenter,ycenter)` on a rectangle defined by (`xmin`, `xmax`, `ymin`, `ymax`).
|
||||||
`xmax`, `ymin`, `ymax`).
|
|
||||||
"""
|
"""
|
||||||
function legend_pos_from_angle(theta, xmin, xcenter, xmax, ymin, ycenter, ymax)
|
function legend_pos_from_angle(theta, xmin, xcenter, xmax, ymin, ycenter, ymax)
|
||||||
(s, c) = sincosd(theta)
|
(s, c) = sincosd(theta)
|
||||||
|
|||||||
@ -79,6 +79,13 @@ const _savemap = Dict(
|
|||||||
"txt" => txt,
|
"txt" => txt,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
for out in Symbol.(unique(values(_savemap)))
|
||||||
|
@eval @doc """
|
||||||
|
$($out)([plot,], filename)
|
||||||
|
Save plot as $($out)-file.
|
||||||
|
""" $out
|
||||||
|
end
|
||||||
|
|
||||||
const _extension_map = Dict("tikz" => "tex")
|
const _extension_map = Dict("tikz" => "tex")
|
||||||
|
|
||||||
function addExtension(fn::AbstractString, ext::AbstractString)
|
function addExtension(fn::AbstractString, ext::AbstractString)
|
||||||
|
|||||||
@ -68,6 +68,17 @@ end
|
|||||||
function _preprocess_userrecipe(kw::AKW)
|
function _preprocess_userrecipe(kw::AKW)
|
||||||
_add_markershape(kw)
|
_add_markershape(kw)
|
||||||
|
|
||||||
|
if get(kw, :permute, default(:permute)) != :none
|
||||||
|
l1, l2 = kw[:permute]
|
||||||
|
for k in _axis_args
|
||||||
|
k1 = _attrsymbolcache[l1][k]
|
||||||
|
k2 = _attrsymbolcache[l2][k]
|
||||||
|
kwk = keys(kw)
|
||||||
|
if k1 in kwk || k2 in kwk
|
||||||
|
kw[k1], kw[k2] = get(kw, k2, default(k2)), get(kw, k1, default(k1))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
# map marker_z if it's a Function
|
# map marker_z if it's a Function
|
||||||
if isa(get(kw, :marker_z, default(:marker_z)), Function)
|
if isa(get(kw, :marker_z, default(:marker_z)), Function)
|
||||||
# TODO: should this take y and/or z as arguments?
|
# TODO: should this take y and/or z as arguments?
|
||||||
@ -275,7 +286,6 @@ function _subplot_setup(plt::Plot, plotattributes::AKW, kw_list::Vector{KW})
|
|||||||
get(sp_attrs, sp, KW())
|
get(sp_attrs, sp, KW())
|
||||||
end
|
end
|
||||||
_update_subplot_args(plt, sp, attr, idx, false)
|
_update_subplot_args(plt, sp, attr, idx, false)
|
||||||
_update_subplot_legend(sp, attr)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
# do we need to link any axes together?
|
# do we need to link any axes together?
|
||||||
@ -339,6 +349,19 @@ RecipesPipeline.is_seriestype_supported(plt::Plot, st) = is_seriestype_supported
|
|||||||
|
|
||||||
function RecipesPipeline.add_series!(plt::Plot, plotattributes)
|
function RecipesPipeline.add_series!(plt::Plot, plotattributes)
|
||||||
sp = _prepare_subplot(plt, plotattributes)
|
sp = _prepare_subplot(plt, plotattributes)
|
||||||
|
if plotattributes[:permute] != :none
|
||||||
|
letter1, letter2 = plotattributes[:permute]
|
||||||
|
if plotattributes[:markershape] == :hline &&
|
||||||
|
(plotattributes[:permute] == (:x, :y) || plotattributes[:permute] == (:y, :x))
|
||||||
|
plotattributes[:markershape] = :vline
|
||||||
|
elseif plotattributes[:markershape] == :vline && (
|
||||||
|
plotattributes[:permute] == (:x, :y) || plotattributes[:permute] == (:y, :x)
|
||||||
|
)
|
||||||
|
plotattributes[:markershape] = :hline
|
||||||
|
end
|
||||||
|
plotattributes[letter1], plotattributes[letter2] =
|
||||||
|
plotattributes[letter2], plotattributes[letter1]
|
||||||
|
end
|
||||||
_expand_subplot_extrema(sp, plotattributes, plotattributes[:seriestype])
|
_expand_subplot_extrema(sp, plotattributes, plotattributes[:seriestype])
|
||||||
_update_series_attributes!(plotattributes, plt, sp)
|
_update_series_attributes!(plotattributes, plt, sp)
|
||||||
_add_the_series(plt, sp, plotattributes)
|
_add_the_series(plt, sp, plotattributes)
|
||||||
@ -428,7 +451,16 @@ function _add_the_series(plt, sp, plotattributes)
|
|||||||
warn_on_unsupported(plt.backend, plotattributes)
|
warn_on_unsupported(plt.backend, plotattributes)
|
||||||
series = Series(plotattributes)
|
series = Series(plotattributes)
|
||||||
push!(plt.series_list, series)
|
push!(plt.series_list, series)
|
||||||
push!(sp.series_list, series)
|
z_order = plotattributes[:z_order]
|
||||||
|
if z_order == :front
|
||||||
|
push!(sp.series_list, series)
|
||||||
|
elseif z_order == :back
|
||||||
|
pushfirst!(sp.series_list, series)
|
||||||
|
elseif z_order isa Integer
|
||||||
|
insert!(sp.series_list, z_order, series)
|
||||||
|
else
|
||||||
|
@error "Wrong type $(typeof(z_order)) for attribute z_order"
|
||||||
|
end
|
||||||
_series_added(plt, series)
|
_series_added(plt, series)
|
||||||
_update_subplot_colorbars(sp)
|
_update_subplot_colorbars(sp)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -247,6 +247,12 @@ function prepare_output(plt::Plot)
|
|||||||
_update_plot_object(plt)
|
_update_plot_object(plt)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
backend_object(plot)
|
||||||
|
|
||||||
|
Returns the backend representation of a Plot object.
|
||||||
|
Returns `nothing` if the backend does not support this.
|
||||||
|
"""
|
||||||
function backend_object(plt::Plot)
|
function backend_object(plt::Plot)
|
||||||
prepare_output(plt)
|
prepare_output(plt)
|
||||||
plt.o
|
plt.o
|
||||||
|
|||||||
@ -24,6 +24,11 @@ elseif v"1.7.0-DEV" <= VERSION <= v"1.7.9"
|
|||||||
include("../deps/SnoopCompile/precompile//1.7/precompile_Plots.jl")
|
include("../deps/SnoopCompile/precompile//1.7/precompile_Plots.jl")
|
||||||
_precompile_()
|
_precompile_()
|
||||||
end
|
end
|
||||||
|
elseif v"1.8.0-DEV" <= VERSION <= v"1.8.9"
|
||||||
|
@static if isfile(joinpath(@__DIR__, "../deps/SnoopCompile/precompile//1.8/precompile_Plots.jl"))
|
||||||
|
include("../deps/SnoopCompile/precompile//1.8/precompile_Plots.jl")
|
||||||
|
_precompile_()
|
||||||
|
end
|
||||||
elseif v"1.9.0-DEV" <= VERSION <= v"1.9.9"
|
elseif v"1.9.0-DEV" <= VERSION <= v"1.9.9"
|
||||||
@static if isfile(joinpath(@__DIR__, "../deps/SnoopCompile/precompile//1.9/precompile_Plots.jl"))
|
@static if isfile(joinpath(@__DIR__, "../deps/SnoopCompile/precompile//1.9/precompile_Plots.jl"))
|
||||||
include("../deps/SnoopCompile/precompile//1.9/precompile_Plots.jl")
|
include("../deps/SnoopCompile/precompile//1.9/precompile_Plots.jl")
|
||||||
|
|||||||
@ -438,7 +438,7 @@ end
|
|||||||
procx, procy, xscale, yscale, baseline = _preprocess_barlike(plotattributes, x, y)
|
procx, procy, xscale, yscale, baseline = _preprocess_barlike(plotattributes, x, y)
|
||||||
nx, ny = length(procx), length(procy)
|
nx, ny = length(procx), length(procy)
|
||||||
axis = plotattributes[:subplot][isvertical(plotattributes) ? :xaxis : :yaxis]
|
axis = plotattributes[:subplot][isvertical(plotattributes) ? :xaxis : :yaxis]
|
||||||
cv = [discrete_value!(axis, xi)[1] for xi in procx]
|
cv = [discrete_value!(plotattributes, :x, xi)[1] for xi in procx]
|
||||||
procx = if nx == ny
|
procx = if nx == ny
|
||||||
cv
|
cv
|
||||||
elseif nx == ny + 1
|
elseif nx == ny + 1
|
||||||
@ -1140,6 +1140,13 @@ end
|
|||||||
# Error Bars
|
# Error Bars
|
||||||
|
|
||||||
function error_style!(plotattributes::AKW)
|
function error_style!(plotattributes::AKW)
|
||||||
|
# errorbar color should soley determined by markerstrokecolor
|
||||||
|
if haskey(plotattributes, :marker_z)
|
||||||
|
reset_kw!(plotattributes, :marker_z)
|
||||||
|
end
|
||||||
|
if haskey(plotattributes, :line_z)
|
||||||
|
reset_kw!(plotattributes, :line_z)
|
||||||
|
end
|
||||||
msc = plotattributes[:markerstrokecolor]
|
msc = plotattributes[:markerstrokecolor]
|
||||||
msc = if msc === :match
|
msc = if msc === :match
|
||||||
plotattributes[:subplot][:foreground_color_subplot]
|
plotattributes[:subplot][:foreground_color_subplot]
|
||||||
@ -1625,7 +1632,6 @@ end
|
|||||||
|
|
||||||
@nospecialize
|
@nospecialize
|
||||||
|
|
||||||
"Adds ax+b... straight line over the current plot, without changing the axis limits"
|
|
||||||
abline!(plt::Plot, a, b; kw...) =
|
abline!(plt::Plot, a, b; kw...) =
|
||||||
plot!(plt, [0, 1], [b, b + a]; seriestype = :straightline, kw...)
|
plot!(plt, [0, 1], [b, b + a]; seriestype = :straightline, kw...)
|
||||||
|
|
||||||
@ -1670,16 +1676,6 @@ end
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
"""
|
|
||||||
areaplot([x,] y)
|
|
||||||
areaplot!([x,] y)
|
|
||||||
|
|
||||||
Draw a stacked area plot of the matrix y.
|
|
||||||
# Examples
|
|
||||||
```julia-repl
|
|
||||||
julia> areaplot(1:3, [1 2 3; 7 8 9; 4 5 6], seriescolor = [:red :green :blue], fillalpha = [0.2 0.3 0.4])
|
|
||||||
```
|
|
||||||
"""
|
|
||||||
@userplot AreaPlot
|
@userplot AreaPlot
|
||||||
|
|
||||||
@recipe function f(a::AreaPlot)
|
@recipe function f(a::AreaPlot)
|
||||||
|
|||||||
@ -472,10 +472,33 @@ yflip!(flip::Bool = true; kw...) = plot!(; yflip = flip, kw...)
|
|||||||
|
|
||||||
"Specify x axis attributes for an existing plot"
|
"Specify x axis attributes for an existing plot"
|
||||||
xaxis!(args...; kw...) = plot!(; xaxis = args, kw...)
|
xaxis!(args...; kw...) = plot!(; xaxis = args, kw...)
|
||||||
|
xgrid!(args...; kw...) = plot!(; xgrid = args, kw...)
|
||||||
|
|
||||||
"Specify y axis attributes for an existing plot"
|
"Specify y axis attributes for an existing plot"
|
||||||
yaxis!(args...; kw...) = plot!(; yaxis = args, kw...)
|
yaxis!(args...; kw...) = plot!(; yaxis = args, kw...)
|
||||||
xgrid!(args...; kw...) = plot!(; xgrid = args, kw...)
|
|
||||||
ygrid!(args...; kw...) = plot!(; ygrid = args, kw...)
|
ygrid!(args...; kw...) = plot!(; ygrid = args, kw...)
|
||||||
|
|
||||||
|
@doc """
|
||||||
|
abline!([plot,] a, b; kwargs...)
|
||||||
|
|
||||||
|
Adds ax+b... straight line over the current plot, without changing the axis limits
|
||||||
|
""" abline!
|
||||||
|
|
||||||
|
@doc """
|
||||||
|
areaplot([x,] y)
|
||||||
|
areaplot!([x,] y)
|
||||||
|
|
||||||
|
Draw a stacked area plot of the matrix y.
|
||||||
|
# Examples
|
||||||
|
```julia-repl
|
||||||
|
julia> areaplot(1:3, [1 2 3; 7 8 9; 4 5 6], seriescolor = [:red :green :blue], fillalpha = [0.2 0.3 0.4])
|
||||||
|
```
|
||||||
|
""" areaplot
|
||||||
|
|
||||||
|
@doc """
|
||||||
|
lens!([plot,] x, y, inset = (sp_index, bbox(x1, x2, y1, y2)))
|
||||||
|
|
||||||
|
Magnify a region of a plot given by `x` and `y`.
|
||||||
|
`sp_index` is the index of the subplot and `x1`, `x2`, `y1` and `y2` should be between `0` and `1`.
|
||||||
|
""" lens!
|
||||||
@specialize
|
@specialize
|
||||||
|
|||||||
12
src/utils.jl
12
src/utils.jl
@ -377,8 +377,7 @@ nanappend!(a::AbstractVector, b) = (push!(a, NaN); append!(a, b))
|
|||||||
function nansplit(v::AVec)
|
function nansplit(v::AVec)
|
||||||
vs = Vector{eltype(v)}[]
|
vs = Vector{eltype(v)}[]
|
||||||
while true
|
while true
|
||||||
idx = findfirst(isnan, v)
|
if (idx = findfirst(isnan, v)) === nothing
|
||||||
if idx <= 0
|
|
||||||
# no nans
|
# no nans
|
||||||
push!(vs, v)
|
push!(vs, v)
|
||||||
break
|
break
|
||||||
@ -986,7 +985,14 @@ titlefont(sp::Subplot) = font(;
|
|||||||
color = sp[:titlefontcolor],
|
color = sp[:titlefontcolor],
|
||||||
)
|
)
|
||||||
|
|
||||||
legendfont(sp::Subplot) = sp[:legend_font]
|
legendfont(sp::Subplot) = font(;
|
||||||
|
family = sp[:legend_font_family],
|
||||||
|
pointsize = sp[:legend_font_pointsize],
|
||||||
|
valign = sp[:legend_font_valign],
|
||||||
|
halign = sp[:legend_font_halign],
|
||||||
|
rotation = sp[:legend_font_rotation],
|
||||||
|
color = sp[:legend_font_color],
|
||||||
|
)
|
||||||
|
|
||||||
legendtitlefont(sp::Subplot) = font(;
|
legendtitlefont(sp::Subplot) = font(;
|
||||||
family = sp[:legend_title_font_family],
|
family = sp[:legend_title_font_family],
|
||||||
|
|||||||
@ -13,7 +13,6 @@ function replace_rand!(ex::Expr)
|
|||||||
end
|
end
|
||||||
function fix_rand!(ex)
|
function fix_rand!(ex)
|
||||||
replace_rand!(ex)
|
replace_rand!(ex)
|
||||||
pushfirst!(ex.args[1].args, :(rng = StableRNG(PLOTS_SEED)))
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function image_comparison_tests(
|
function image_comparison_tests(
|
||||||
@ -39,10 +38,13 @@ function image_comparison_tests(
|
|||||||
|
|
||||||
# test function
|
# test function
|
||||||
func = (fn, idx) -> begin
|
func = (fn, idx) -> begin
|
||||||
expr = Expr(:block)
|
eval(:(rng = StableRNG(PLOTS_SEED)))
|
||||||
append!(expr.args, example.exprs)
|
for the_expr in example.exprs
|
||||||
fix_rand!(expr)
|
expr = Expr(:block)
|
||||||
eval(expr)
|
push!(expr.args, the_expr)
|
||||||
|
fix_rand!(expr)
|
||||||
|
eval(expr)
|
||||||
|
end
|
||||||
png(fn)
|
png(fn)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
404
test/runtests.jl
404
test/runtests.jl
@ -37,7 +37,278 @@ end
|
|||||||
Plots.use_local_dependencies[] = temp
|
Plots.use_local_dependencies[] = temp
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Utils" begin
|
||||||
|
zipped = (
|
||||||
|
[(1, 2)],
|
||||||
|
[("a", "b")],
|
||||||
|
[(1, "a"), (2, "b")],
|
||||||
|
[(1, 2), (3, 4)],
|
||||||
|
[(1, 2, 3), (3, 4, 5)],
|
||||||
|
[(1, 2, 3, 4), (3, 4, 5, 6)],
|
||||||
|
[(1, 2.0), (missing, missing)],
|
||||||
|
[(1, missing), (missing, "a")],
|
||||||
|
[(missing, missing)],
|
||||||
|
[(missing, missing, missing), ("a", "b", "c")],
|
||||||
|
)
|
||||||
|
for z in zipped
|
||||||
|
@test isequal(collect(zip(Plots.RecipesPipeline.unzip(z)...)), z)
|
||||||
|
@test isequal(
|
||||||
|
collect(zip(Plots.RecipesPipeline.unzip(GeometryBasics.Point.(z))...)),
|
||||||
|
z,
|
||||||
|
)
|
||||||
|
end
|
||||||
|
op1 = Plots.process_clims((1.0, 2.0))
|
||||||
|
op2 = Plots.process_clims((1, 2.0))
|
||||||
|
data = randn(100, 100)
|
||||||
|
@test op1(data) == op2(data)
|
||||||
|
@test Plots.process_clims(nothing) ==
|
||||||
|
Plots.process_clims(missing) ==
|
||||||
|
Plots.process_clims(:auto)
|
||||||
|
|
||||||
|
@test (==)(
|
||||||
|
Plots.texmath2unicode(
|
||||||
|
raw"Equation $y = \alpha \cdot x + \beta$ and eqn $y = \sin(x)^2$",
|
||||||
|
),
|
||||||
|
raw"Equation y = α ⋅ x + β and eqn y = sin(x)²",
|
||||||
|
)
|
||||||
|
|
||||||
|
@test Plots.isvector([1, 2])
|
||||||
|
@test !Plots.isvector(nothing)
|
||||||
|
@test Plots.ismatrix([1 2; 3 4])
|
||||||
|
@test !Plots.ismatrix(nothing)
|
||||||
|
@test Plots.isscalar(1.0)
|
||||||
|
@test !Plots.isscalar(nothing)
|
||||||
|
@test Plots.tovec([]) isa AbstractVector
|
||||||
|
@test Plots.tovec(nothing) isa AbstractVector
|
||||||
|
@test Plots.anynan(1, 3, (1, NaN, 3))
|
||||||
|
@test Plots.allnan(1, 2, (NaN, NaN, 1))
|
||||||
|
@test Plots.makevec([]) isa AbstractVector
|
||||||
|
@test Plots.makevec(1) isa AbstractVector
|
||||||
|
@test Plots.maketuple(1) == (1, 1)
|
||||||
|
@test Plots.maketuple((1, 1)) == (1, 1)
|
||||||
|
@test Plots.ok(1, 2)
|
||||||
|
@test !Plots.ok(1, 2, NaN)
|
||||||
|
@test Plots.ok((1, 2, 3))
|
||||||
|
@test !Plots.ok((1, 2, NaN))
|
||||||
|
@test Plots.nansplit([1, 2, NaN, 3, 4]) == [[1.0, 2.0], [3.0, 4.0]]
|
||||||
|
@test Plots.nanvcat([1, NaN]) |> length == 4
|
||||||
|
|
||||||
|
@test Plots.nop() === nothing
|
||||||
|
@test_throws ErrorException Plots.notimpl()
|
||||||
|
|
||||||
|
@test Plots.inch2px(1) isa AbstractFloat
|
||||||
|
@test Plots.px2inch(1) isa AbstractFloat
|
||||||
|
@test Plots.inch2mm(1) isa AbstractFloat
|
||||||
|
@test Plots.mm2inch(1) isa AbstractFloat
|
||||||
|
@test Plots.px2mm(1) isa AbstractFloat
|
||||||
|
@test Plots.mm2px(1) isa AbstractFloat
|
||||||
|
|
||||||
|
p = plot()
|
||||||
|
@test xlims() isa Tuple
|
||||||
|
@test ylims() isa Tuple
|
||||||
|
@test zlims() isa Tuple
|
||||||
|
|
||||||
|
Plots.makekw(foo = 1, bar = 2) isa Dict
|
||||||
|
|
||||||
|
@test_throws ErrorException Plots.inline()
|
||||||
|
@test_throws ErrorException Plots._do_plot_show(plot(), :inline)
|
||||||
|
@test_throws ErrorException Plots.dumpcallstack()
|
||||||
|
|
||||||
|
Plots.debugplots(true)
|
||||||
|
Plots.debugplots(false)
|
||||||
|
Plots.debugshow(devnull, nothing)
|
||||||
|
Plots.debugshow(devnull, [1])
|
||||||
|
|
||||||
|
p = plot(1)
|
||||||
|
push!(p, 1.5)
|
||||||
|
push!(p, 1, 1.5)
|
||||||
|
# append!(p, [1., 2.])
|
||||||
|
append!(p, 1, 2.5, 2.5)
|
||||||
|
push!(p, (1.5, 2.5))
|
||||||
|
push!(p, 1, (1.5, 2.5))
|
||||||
|
append!(p, (1.5, 2.5))
|
||||||
|
append!(p, 1, (1.5, 2.5))
|
||||||
|
|
||||||
|
p = plot([1, 2, 3], [4, 5, 6])
|
||||||
|
@test Plots.xmin(p) == 1
|
||||||
|
@test Plots.xmax(p) == 3
|
||||||
|
@test Plots.ignorenan_extrema(p) == (1, 3)
|
||||||
|
|
||||||
|
@test Plots.get_attr_symbol(:x, "lims") == :xlims
|
||||||
|
@test Plots.get_attr_symbol(:x, :lims) == :xlims
|
||||||
|
|
||||||
|
@testset "NaN-separated Segments" begin
|
||||||
|
segments(args...) = collect(iter_segments(args...))
|
||||||
|
|
||||||
|
nan10 = fill(NaN, 10)
|
||||||
|
@test segments(11:20) == [1:10]
|
||||||
|
@test segments([NaN]) == []
|
||||||
|
@test segments(nan10) == []
|
||||||
|
@test segments([nan10; 1:5]) == [11:15]
|
||||||
|
@test segments([1:5; nan10]) == [1:5]
|
||||||
|
@test segments([nan10; 1:5; nan10; 1:5; nan10]) == [11:15, 26:30]
|
||||||
|
@test segments([NaN; 1], 1:10) == [2:2, 4:4, 6:6, 8:8, 10:10]
|
||||||
|
@test segments([nan10; 1:15], [1:15; nan10]) == [11:15]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Axes" begin
|
||||||
|
p = plot()
|
||||||
|
axis = p.subplots[1][:xaxis]
|
||||||
|
@test typeof(axis) == Plots.Axis
|
||||||
|
@test Plots.discrete_value!(axis, "HI") == (0.5, 1)
|
||||||
|
@test Plots.discrete_value!(axis, :yo) == (1.5, 2)
|
||||||
|
@test Plots.ignorenan_extrema(axis) == (0.5, 1.5)
|
||||||
|
@test axis[:discrete_map] == Dict{Any,Any}(:yo => 2, "HI" => 1)
|
||||||
|
|
||||||
|
Plots.discrete_value!(axis, ["x$i" for i in 1:5])
|
||||||
|
Plots.discrete_value!(axis, ["x$i" for i in 0:2])
|
||||||
|
@test Plots.ignorenan_extrema(axis) == (0.5, 7.5)
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "NoFail" begin
|
||||||
|
# ensure backend with tested display
|
||||||
|
@test unicodeplots() == Plots.UnicodePlotsBackend()
|
||||||
|
@test backend() == Plots.UnicodePlotsBackend()
|
||||||
|
|
||||||
|
dsp = TextDisplay(IOContext(IOBuffer(), :color => true))
|
||||||
|
|
||||||
|
@testset "plot" begin
|
||||||
|
for plt in [
|
||||||
|
histogram([1, 0, 0, 0, 0, 0]),
|
||||||
|
plot([missing]),
|
||||||
|
plot([missing, missing]),
|
||||||
|
plot(fill(missing, 10)),
|
||||||
|
plot([missing; 1:4]),
|
||||||
|
plot([fill(missing, 10); 1:4]),
|
||||||
|
plot([1 1; 1 missing]),
|
||||||
|
plot(["a" "b"; missing "d"], [1 2; 3 4]),
|
||||||
|
]
|
||||||
|
display(dsp, plt)
|
||||||
|
end
|
||||||
|
@test_nowarn plot(x -> x^2, 0, 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "bar" begin
|
||||||
|
p = bar([3, 2, 1], [1, 2, 3])
|
||||||
|
@test p isa Plots.Plot
|
||||||
|
@test display(dsp, p) isa Nothing
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "gui" begin
|
||||||
|
open(tempname(), "w") do io
|
||||||
|
redirect_stdout(io) do
|
||||||
|
gui(plot())
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Coverage" begin
|
||||||
|
@testset "themes" begin
|
||||||
|
p = showtheme(:dark)
|
||||||
|
@test p isa Plots.Plot
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "plotattr" begin
|
||||||
|
tmp = tempname()
|
||||||
|
open(tmp, "w") do io
|
||||||
|
redirect_stdout(io) do
|
||||||
|
plotattr("seriestype")
|
||||||
|
plotattr(:Plot)
|
||||||
|
plotattr()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
str = join(readlines(tmp), "")
|
||||||
|
@test occursin("seriestype", str)
|
||||||
|
@test occursin("Plot attributes", str)
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "legend" begin
|
||||||
|
@test isa(
|
||||||
|
Plots.legend_pos_from_angle(20, 0.0, 0.5, 1.0, 0.0, 0.5, 1.0),
|
||||||
|
NTuple{2,<:AbstractFloat},
|
||||||
|
)
|
||||||
|
@test Plots.legend_anchor_index(-1) == 1
|
||||||
|
@test Plots.legend_anchor_index(+0) == 2
|
||||||
|
@test Plots.legend_anchor_index(+1) == 3
|
||||||
|
|
||||||
|
@test Plots.legend_angle(:foo_bar) == (45, :inner)
|
||||||
|
@test Plots.legend_angle(20.0) ==
|
||||||
|
Plots.legend_angle((20.0, :inner)) ==
|
||||||
|
(20.0, :inner)
|
||||||
|
@test Plots.legend_angle((20.0, 10.0)) == (20.0, 10.0)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Output" begin
|
||||||
|
@test Plots.defaultOutputFormat(plot()) == "png"
|
||||||
|
@test Plots.addExtension("foo", "bar") == "foo.bar"
|
||||||
|
|
||||||
|
fn = tempname()
|
||||||
|
gr()
|
||||||
|
let p = plot()
|
||||||
|
Plots.png(p, fn)
|
||||||
|
Plots.png(fn)
|
||||||
|
savefig(p, "$fn.png")
|
||||||
|
savefig("$fn.png")
|
||||||
|
|
||||||
|
Plots.pdf(p, fn)
|
||||||
|
Plots.pdf(fn)
|
||||||
|
savefig(p, "$fn.pdf")
|
||||||
|
savefig("$fn.pdf")
|
||||||
|
|
||||||
|
Plots.ps(p, fn)
|
||||||
|
Plots.ps(fn)
|
||||||
|
savefig(p, "$fn.ps")
|
||||||
|
savefig("$fn.ps")
|
||||||
|
|
||||||
|
Plots.svg(p, fn)
|
||||||
|
Plots.svg(fn)
|
||||||
|
savefig(p, "$fn.svg")
|
||||||
|
savefig("$fn.svg")
|
||||||
|
end
|
||||||
|
|
||||||
|
if Sys.islinux()
|
||||||
|
pgfplotsx()
|
||||||
|
let p = plot()
|
||||||
|
Plots.tex(p, fn)
|
||||||
|
Plots.tex(fn)
|
||||||
|
savefig(p, "$fn.tex")
|
||||||
|
savefig("$fn.tex")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
unicodeplots()
|
||||||
|
let p = plot()
|
||||||
|
Plots.txt(p, fn)
|
||||||
|
Plots.txt(fn)
|
||||||
|
savefig(p, "$fn.txt")
|
||||||
|
savefig("$fn.txt")
|
||||||
|
end
|
||||||
|
|
||||||
|
plotlyjs()
|
||||||
|
let p = plot()
|
||||||
|
Plots.html(p, fn)
|
||||||
|
Plots.html(fn)
|
||||||
|
savefig(p, "$fn.html")
|
||||||
|
savefig("$fn.html")
|
||||||
|
|
||||||
|
if Sys.islinux()
|
||||||
|
Plots.eps(p, fn)
|
||||||
|
Plots.eps(fn)
|
||||||
|
savefig(p, "$fn.eps")
|
||||||
|
savefig("$fn.eps")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@test_throws ErrorException savefig("$fn.foo")
|
||||||
|
end
|
||||||
|
|
||||||
|
gr() # reset to default backend
|
||||||
|
|
||||||
for fn in (
|
for fn in (
|
||||||
|
"test_args.jl",
|
||||||
"test_defaults.jl",
|
"test_defaults.jl",
|
||||||
"test_pipeline.jl",
|
"test_pipeline.jl",
|
||||||
"test_axes.jl",
|
"test_axes.jl",
|
||||||
@ -51,6 +322,7 @@ for fn in (
|
|||||||
"test_hdf5plots.jl",
|
"test_hdf5plots.jl",
|
||||||
"test_pgfplotsx.jl",
|
"test_pgfplotsx.jl",
|
||||||
"test_plotly.jl",
|
"test_plotly.jl",
|
||||||
|
"test_animations.jl",
|
||||||
)
|
)
|
||||||
@testset "$fn" begin
|
@testset "$fn" begin
|
||||||
include(fn)
|
include(fn)
|
||||||
@ -91,7 +363,10 @@ Random.seed!(PLOTS_SEED)
|
|||||||
default(show = false, reuse = true) # don't actually show the plots
|
default(show = false, reuse = true) # don't actually show the plots
|
||||||
|
|
||||||
is_ci() = get(ENV, "CI", "false") == "true"
|
is_ci() = get(ENV, "CI", "false") == "true"
|
||||||
const PLOTS_IMG_TOL = parse(Float64, get(ENV, "PLOTS_IMG_TOL", is_ci() ? "1e-4" : "1e-5"))
|
const PLOTS_IMG_TOL = parse(
|
||||||
|
Float64,
|
||||||
|
get(ENV, "PLOTS_IMG_TOL", is_ci() ? Sys.iswindows() ? "2e-4" : "1e-4" : "1e-5"),
|
||||||
|
)
|
||||||
|
|
||||||
## Uncomment the following lines to update reference images for different backends
|
## Uncomment the following lines to update reference images for different backends
|
||||||
|
|
||||||
@ -116,106 +391,29 @@ const PLOTS_IMG_TOL = parse(Float64, get(ENV, "PLOTS_IMG_TOL", is_ci() ? "1e-4"
|
|||||||
|
|
||||||
##
|
##
|
||||||
|
|
||||||
@testset "Axes" begin
|
@testset "Examples" begin
|
||||||
p = plot()
|
if Sys.islinux()
|
||||||
axis = p.subplots[1][:xaxis]
|
backends = (
|
||||||
@test typeof(axis) == Plots.Axis
|
:unicodeplots,
|
||||||
@test Plots.discrete_value!(axis, "HI") == (0.5, 1)
|
:pgfplotsx,
|
||||||
@test Plots.discrete_value!(axis, :yo) == (1.5, 2)
|
:inspectdr,
|
||||||
@test Plots.ignorenan_extrema(axis) == (0.5, 1.5)
|
:plotlyjs,
|
||||||
@test axis[:discrete_map] == Dict{Any,Any}(:yo => 2, "HI" => 1)
|
:gaston,
|
||||||
|
# :pyplot, # FIXME: fails with system matplotlib
|
||||||
Plots.discrete_value!(axis, ["x$i" for i in 1:5])
|
|
||||||
Plots.discrete_value!(axis, ["x$i" for i in 0:2])
|
|
||||||
@test Plots.ignorenan_extrema(axis) == (0.5, 7.5)
|
|
||||||
end
|
|
||||||
|
|
||||||
@testset "NoFail" begin
|
|
||||||
# ensure backend with tested display
|
|
||||||
@test unicodeplots() == Plots.UnicodePlotsBackend()
|
|
||||||
@test backend() == Plots.UnicodePlotsBackend()
|
|
||||||
|
|
||||||
dsp = TextDisplay(IOContext(IOBuffer(), :color => true))
|
|
||||||
|
|
||||||
@testset "Plot" begin
|
|
||||||
plots = [
|
|
||||||
histogram([1, 0, 0, 0, 0, 0]),
|
|
||||||
plot([missing]),
|
|
||||||
plot([missing, missing]),
|
|
||||||
plot(fill(missing, 10)),
|
|
||||||
plot([missing; 1:4]),
|
|
||||||
plot([fill(missing, 10); 1:4]),
|
|
||||||
plot([1 1; 1 missing]),
|
|
||||||
plot(["a" "b"; missing "d"], [1 2; 3 4]),
|
|
||||||
]
|
|
||||||
for plt in plots
|
|
||||||
display(dsp, plt)
|
|
||||||
end
|
|
||||||
@test_nowarn plot(x -> x^2, 0, 2)
|
|
||||||
end
|
|
||||||
|
|
||||||
@testset "Bar" begin
|
|
||||||
p = bar([3, 2, 1], [1, 2, 3])
|
|
||||||
@test p isa Plots.Plot
|
|
||||||
@test display(dsp, p) isa Nothing
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
@testset "EmptyAnim" begin
|
|
||||||
anim = @animate for i in []
|
|
||||||
end
|
|
||||||
|
|
||||||
@test_throws ArgumentError gif(anim)
|
|
||||||
end
|
|
||||||
|
|
||||||
@testset "NaN-separated Segments" begin
|
|
||||||
segments(args...) = collect(iter_segments(args...))
|
|
||||||
|
|
||||||
nan10 = fill(NaN, 10)
|
|
||||||
@test segments(11:20) == [1:10]
|
|
||||||
@test segments([NaN]) == []
|
|
||||||
@test segments(nan10) == []
|
|
||||||
@test segments([nan10; 1:5]) == [11:15]
|
|
||||||
@test segments([1:5; nan10]) == [1:5]
|
|
||||||
@test segments([nan10; 1:5; nan10; 1:5; nan10]) == [11:15, 26:30]
|
|
||||||
@test segments([NaN; 1], 1:10) == [2:2, 4:4, 6:6, 8:8, 10:10]
|
|
||||||
@test segments([nan10; 1:15], [1:15; nan10]) == [11:15]
|
|
||||||
end
|
|
||||||
|
|
||||||
@testset "Utils" begin
|
|
||||||
zipped = (
|
|
||||||
[(1, 2)],
|
|
||||||
[("a", "b")],
|
|
||||||
[(1, "a"), (2, "b")],
|
|
||||||
[(1, 2), (3, 4)],
|
|
||||||
[(1, 2, 3), (3, 4, 5)],
|
|
||||||
[(1, 2, 3, 4), (3, 4, 5, 6)],
|
|
||||||
[(1, 2.0), (missing, missing)],
|
|
||||||
[(1, missing), (missing, "a")],
|
|
||||||
[(missing, missing)],
|
|
||||||
[(missing, missing, missing), ("a", "b", "c")],
|
|
||||||
)
|
|
||||||
for z in zipped
|
|
||||||
@test isequal(collect(zip(Plots.RecipesPipeline.unzip(z)...)), z)
|
|
||||||
@test isequal(
|
|
||||||
collect(zip(Plots.RecipesPipeline.unzip(GeometryBasics.Point.(z))...)),
|
|
||||||
z,
|
|
||||||
)
|
)
|
||||||
|
only = setdiff(
|
||||||
|
1:length(Plots._examples),
|
||||||
|
(Plots._backend_skips[be] for be in backends)...,
|
||||||
|
)
|
||||||
|
for be in backends
|
||||||
|
@info be
|
||||||
|
for (i, p) in Plots.test_examples(be, only = only, disp = false)
|
||||||
|
fn = tempname() * ".png"
|
||||||
|
png(p, fn)
|
||||||
|
@test filesize(fn) > 1_000
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
op1 = Plots.process_clims((1.0, 2.0))
|
|
||||||
op2 = Plots.process_clims((1, 2.0))
|
|
||||||
data = randn(100, 100)
|
|
||||||
@test op1(data) == op2(data)
|
|
||||||
@test Plots.process_clims(nothing) ==
|
|
||||||
Plots.process_clims(missing) ==
|
|
||||||
Plots.process_clims(:auto)
|
|
||||||
|
|
||||||
@test (==)(
|
|
||||||
Plots.texmath2unicode(
|
|
||||||
raw"Equation $y = \alpha \cdot x + \beta$ and eqn $y = \sin(x)^2$",
|
|
||||||
),
|
|
||||||
raw"Equation y = α ⋅ x + β and eqn y = sin(x)²",
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@testset "Backends" begin
|
@testset "Backends" begin
|
||||||
@ -229,24 +427,32 @@ end
|
|||||||
p = plot(rand(10))
|
p = plot(rand(10))
|
||||||
@test p isa Plots.Plot
|
@test p isa Plots.Plot
|
||||||
@test show(io, p) isa Nothing
|
@test show(io, p) isa Nothing
|
||||||
|
|
||||||
p = bar(randn(10))
|
p = bar(randn(10))
|
||||||
@test p isa Plots.Plot
|
@test p isa Plots.Plot
|
||||||
@test show(io, p) isa Nothing
|
@test show(io, p) isa Nothing
|
||||||
|
|
||||||
p = plot([1, 2], [3, 4])
|
p = plot([1, 2], [3, 4])
|
||||||
annotate!(p, [(1.5, 3.2, Plots.text("Test", :red, :center))])
|
annotate!(p, [(1.5, 3.2, Plots.text("Test", :red, :center))])
|
||||||
hline!(p, [3.1])
|
hline!(p, [3.1])
|
||||||
@test p isa Plots.Plot
|
@test p isa Plots.Plot
|
||||||
@test show(io, p) isa Nothing
|
@test show(io, p) isa Nothing
|
||||||
|
|
||||||
p = plot([Dates.Date(2019, 1, 1), Dates.Date(2019, 2, 1)], [3, 4])
|
p = plot([Dates.Date(2019, 1, 1), Dates.Date(2019, 2, 1)], [3, 4])
|
||||||
hline!(p, [3.1])
|
hline!(p, [3.1])
|
||||||
annotate!(p, [(Dates.Date(2019, 1, 15), 3.2, Plots.text("Test", :red, :center))])
|
annotate!(p, [(Dates.Date(2019, 1, 15), 3.2, Plots.text("Test", :red, :center))])
|
||||||
@test p isa Plots.Plot
|
@test p isa Plots.Plot
|
||||||
@test show(io, p) isa Nothing
|
@test show(io, p) isa Nothing
|
||||||
|
|
||||||
p = plot([Dates.Date(2019, 1, 1), Dates.Date(2019, 2, 1)], [3, 4])
|
p = plot([Dates.Date(2019, 1, 1), Dates.Date(2019, 2, 1)], [3, 4])
|
||||||
annotate!(p, [(Dates.Date(2019, 1, 15), 3.2, :auto)])
|
annotate!(p, [(Dates.Date(2019, 1, 15), 3.2, :auto)])
|
||||||
hline!(p, [3.1])
|
hline!(p, [3.1])
|
||||||
@test p isa Plots.Plot
|
@test p isa Plots.Plot
|
||||||
@test show(io, p) isa Nothing
|
@test show(io, p) isa Nothing
|
||||||
|
|
||||||
|
p = plot((plot(i) for i in 1:4)..., layout = (2, 2))
|
||||||
|
@test p isa Plots.Plot
|
||||||
|
@test show(io, p) isa Nothing
|
||||||
end
|
end
|
||||||
|
|
||||||
@testset "GR" begin
|
@testset "GR" begin
|
||||||
|
|||||||
61
test/test_animations.jl
Normal file
61
test/test_animations.jl
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
|
||||||
|
@testset "Empty anim" begin
|
||||||
|
anim = @animate for i in []
|
||||||
|
end
|
||||||
|
@test_throws ArgumentError gif(anim)
|
||||||
|
end
|
||||||
|
|
||||||
|
@userplot CirclePlot
|
||||||
|
@recipe function f(cp::CirclePlot)
|
||||||
|
x, y, i = cp.args
|
||||||
|
n = length(x)
|
||||||
|
inds = circshift(1:n, 1 - i)
|
||||||
|
linewidth --> range(0, 10, length = n)
|
||||||
|
seriesalpha --> range(0, 1, length = n)
|
||||||
|
aspect_ratio --> 1
|
||||||
|
label --> false
|
||||||
|
x[inds], y[inds]
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Circle plot" begin
|
||||||
|
n = 10
|
||||||
|
t = range(0, 2π, length = n)
|
||||||
|
x = sin.(t)
|
||||||
|
y = cos.(t)
|
||||||
|
|
||||||
|
anim = @animate for i in 1:n
|
||||||
|
circleplot(x, y, i)
|
||||||
|
end
|
||||||
|
@test filesize(gif(anim).filename) > 10_000
|
||||||
|
@test filesize(mov(anim).filename) > 10_000
|
||||||
|
@test filesize(mp4(anim).filename) > 10_000
|
||||||
|
@test filesize(webm(anim).filename) > 10_000
|
||||||
|
|
||||||
|
@gif for i in 1:n
|
||||||
|
circleplot(x, y, i, line_z = 1:n, cbar = false, framestyle = :zerolines)
|
||||||
|
end every 5
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "html" begin
|
||||||
|
p = plot([sin, cos], zeros(0), leg = false, xlims = (0, 2π), ylims = (-1, 1))
|
||||||
|
anim = Animation()
|
||||||
|
for x in range(0, stop = 2π, length = 10)
|
||||||
|
push!(p, x, Float64[sin(x), cos(x)])
|
||||||
|
frame(anim)
|
||||||
|
end
|
||||||
|
|
||||||
|
agif = gif(anim)
|
||||||
|
html = tempname() * ".html"
|
||||||
|
open(html, "w") do io
|
||||||
|
show(io, MIME("text/html"), agif)
|
||||||
|
end
|
||||||
|
@test filesize(html) > 10_000
|
||||||
|
@test showable(MIME("image/gif"), agif)
|
||||||
|
|
||||||
|
agif = mp4(anim)
|
||||||
|
html = tempname() * ".html"
|
||||||
|
open(html, "w") do io
|
||||||
|
show(io, MIME("text/html"), agif)
|
||||||
|
end
|
||||||
|
@test filesize(html) > 10_000
|
||||||
|
end
|
||||||
27
test/test_args.jl
Normal file
27
test/test_args.jl
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
using Plots, Test
|
||||||
|
|
||||||
|
@testset "Series Attributes" begin
|
||||||
|
pl = plot([[1, 2, 3], [2, 3, 4]], lw = 5)
|
||||||
|
@test hline!(deepcopy(pl), [1.75])[1].series_list[3][:label] ==
|
||||||
|
hline!(deepcopy(pl), [1.75], z_order = :front)[1].series_list[3][:label] ==
|
||||||
|
"y3"
|
||||||
|
@test hline!(deepcopy(pl), [1.75], z_order = :back)[1].series_list[1][:label] == "y3"
|
||||||
|
@test hline!(deepcopy(pl), [1.75], z_order = 2)[1].series_list[2][:label] == "y3"
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Axis Attributes" begin
|
||||||
|
pl = @test_nowarn plot(; tickfont = font(10, "Times"))
|
||||||
|
for axis in (:xaxis, :yaxis, :zaxis)
|
||||||
|
@test pl[1][axis][:tickfontsize] == 10
|
||||||
|
@test pl[1][axis][:tickfontfamily] == "Times"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Permute recipes" begin
|
||||||
|
pl = bar(["a", "b", "c"], [1, 2, 3])
|
||||||
|
ppl = bar(["a", "b", "c"], [1, 2, 3], permute = (:x, :y))
|
||||||
|
@test xticks(ppl) == yticks(pl)
|
||||||
|
@test yticks(ppl) == xticks(pl)
|
||||||
|
@test filter(isfinite, pl[1][1][:x]) == filter(isfinite, ppl[1][1][:y])
|
||||||
|
@test filter(isfinite, pl[1][1][:y]) == filter(isfinite, ppl[1][1][:x])
|
||||||
|
end
|
||||||
@ -3,6 +3,9 @@ using Plots, Test
|
|||||||
@testset "Shapes" begin
|
@testset "Shapes" begin
|
||||||
@testset "Type" begin
|
@testset "Type" begin
|
||||||
square = Shape([(0, 0.0), (1, 0.0), (1, 1.0), (0, 1.0)])
|
square = Shape([(0, 0.0), (1, 0.0), (1, 1.0), (0, 1.0)])
|
||||||
|
@test Plots.get_xs(square) == [0, 1, 1, 0]
|
||||||
|
@test Plots.get_ys(square) == [0, 0, 1, 1]
|
||||||
|
@test Plots.vertices(square) == [(0, 0), (1, 0), (1, 1), (0, 1)]
|
||||||
@test isa(square, Shape{Int64,Float64})
|
@test isa(square, Shape{Int64,Float64})
|
||||||
@test coords(square) isa Tuple{Vector{S},Vector{T}} where {T,S}
|
@test coords(square) isa Tuple{Vector{S},Vector{T}} where {T,S}
|
||||||
end
|
end
|
||||||
@ -58,6 +61,25 @@ using Plots, Test
|
|||||||
@test_nowarn p = plot(myshapes)
|
@test_nowarn p = plot(myshapes)
|
||||||
@test p[1][1][:seriestype] == :shape
|
@test p[1][1][:seriestype] == :shape
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Misc" begin
|
||||||
|
@test Plots.weave([1, 3], [2, 4]) == collect(1:4)
|
||||||
|
@test Plots.makeshape(3) isa Plots.Shape
|
||||||
|
@test Plots.makestar(3) isa Plots.Shape
|
||||||
|
@test Plots.makecross() isa Plots.Shape
|
||||||
|
@test Plots.makearrowhead(10.0) isa Plots.Shape
|
||||||
|
|
||||||
|
@test Plots.rotate(1.0, 2.0, 5.0, (0, 0)) isa Tuple
|
||||||
|
|
||||||
|
star = Plots.makestar(3)
|
||||||
|
star_scaled = Plots.scale(star, 0.5)
|
||||||
|
|
||||||
|
Plots.scale!(star, 0.5)
|
||||||
|
@test Plots.get_xs(star) == Plots.get_xs(star_scaled)
|
||||||
|
@test Plots.get_ys(star) == Plots.get_ys(star_scaled)
|
||||||
|
|
||||||
|
@test Plots.extrema_plus_buffer([1, 2], 0.1) == (0.9, 2.1)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@testset "Brush" begin
|
@testset "Brush" begin
|
||||||
@ -82,6 +104,39 @@ end
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Text" begin
|
||||||
|
t = Plots.PlotText("foo")
|
||||||
|
f = Plots.font()
|
||||||
|
|
||||||
|
@test Plots.PlotText(nothing).str == "nothing"
|
||||||
|
@test length(t) == 3
|
||||||
|
@test text(t).str == "foo"
|
||||||
|
@test text(t, f).str == "foo"
|
||||||
|
@test text("bar", f).str == "bar"
|
||||||
|
@test text(true).str == "true"
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Annotations" begin
|
||||||
|
ann = Plots.series_annotations(missing)
|
||||||
|
|
||||||
|
@test Plots.series_annotations(["1" "2"; "3" "4"]) isa AbstractMatrix
|
||||||
|
@test Plots.series_annotations(10).strs[1].str == "10"
|
||||||
|
@test Plots.series_annotations(nothing) === nothing
|
||||||
|
@test Plots.series_annotations(ann) == ann
|
||||||
|
|
||||||
|
@test Plots.annotations(["1" "2"; "3" "4"]) isa AbstractMatrix
|
||||||
|
@test Plots.annotations(ann) == ann
|
||||||
|
@test Plots.annotations([ann]) == [ann]
|
||||||
|
@test Plots.annotations(nothing) == []
|
||||||
|
|
||||||
|
t = Plots.text("foo")
|
||||||
|
sp = plot(1)[1]
|
||||||
|
@test Plots.locate_annotation(sp, 1, 2, t) == (1, 2, t)
|
||||||
|
@test Plots.locate_annotation(sp, 1, 2, 3, t) == (1, 2, 3, t)
|
||||||
|
@test Plots.locate_annotation(sp, (0.1, 0.2), t) isa Tuple
|
||||||
|
@test Plots.locate_annotation(sp, (0.1, 0.2, 0.3), t) isa Tuple
|
||||||
|
end
|
||||||
|
|
||||||
@testset "Fonts" begin
|
@testset "Fonts" begin
|
||||||
@testset "Scaling" begin
|
@testset "Scaling" begin
|
||||||
sizesToCheck = [
|
sizesToCheck = [
|
||||||
@ -158,3 +213,9 @@ end
|
|||||||
@test pos == (0.1, 0.5)
|
@test pos == (0.1, 0.5)
|
||||||
@test txt.str == "(a)"
|
@test txt.str == "(a)"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Bezier" begin
|
||||||
|
curve = Plots.BezierCurve([Plots.P2(0.0, 0.0), Plots.P2(0.5, 1.0), Plots.P2(1.0, 0.0)])
|
||||||
|
@test curve(0.75) == Plots.P2(0.75, 0.375)
|
||||||
|
@test length(coords(curve, 10)) == 10
|
||||||
|
end
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
using Plots, Test, Colors
|
using Plots, Test, Plots.Colors
|
||||||
|
|
||||||
const PLOTS_DEFAULTS = Dict(:theme => :wong2, :fontfamily => :palantino)
|
const PLOTS_DEFAULTS = Dict(:theme => :wong2, :fontfamily => :palantino)
|
||||||
Plots.__init__()
|
Plots.__init__()
|
||||||
@ -93,4 +93,9 @@ end # testset
|
|||||||
# match mechanism
|
# match mechanism
|
||||||
@test sp[:legend_font_color] == sp[:foreground_color_subplot]
|
@test sp[:legend_font_color] == sp[:foreground_color_subplot]
|
||||||
@test Plots.legendfont(sp).color == sp[:foreground_color_subplot]
|
@test Plots.legendfont(sp).color == sp[:foreground_color_subplot]
|
||||||
|
|
||||||
|
# magic invocation
|
||||||
|
@test_nowarn sp = plot(; legendfont = 12)[1]
|
||||||
|
@test sp[:legend_font_pointsize] == 12
|
||||||
|
@test Plots.legendfont(sp).pointsize == 12
|
||||||
end # testset
|
end # testset
|
||||||
|
|||||||
@ -32,3 +32,67 @@ end
|
|||||||
@test p[2][:framestyle] === :grid
|
@test p[2][:framestyle] === :grid
|
||||||
@test p[3][:framestyle] === :none
|
@test p[3][:framestyle] === :none
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Coverage" begin
|
||||||
|
p = plot((plot(i) for i in 1:4)..., layout = (2, 2))
|
||||||
|
|
||||||
|
sp = p[end]
|
||||||
|
@test sp isa Plots.Subplot
|
||||||
|
@test size(sp) == (1, 1)
|
||||||
|
@test length(sp) == 1
|
||||||
|
@test sp[1, 1] == sp
|
||||||
|
@test Plots.get_subplot(p, UInt32(4)) == sp
|
||||||
|
@test Plots.series_list(sp) |> first |> Plots.get_subplot isa Plots.Subplot
|
||||||
|
@test Plots.get_subplot(p, keys(p.spmap) |> first) isa Plots.Subplot
|
||||||
|
|
||||||
|
gl = p[2, 2]
|
||||||
|
@test gl isa Plots.GridLayout
|
||||||
|
@test length(gl) == 1
|
||||||
|
@test size(gl) == (1, 1)
|
||||||
|
@test Plots.layout_args(gl) == (gl, 1)
|
||||||
|
|
||||||
|
@test size(p, 1) == 2
|
||||||
|
@test size(p, 2) == 2
|
||||||
|
@test size(p) === (2, 2)
|
||||||
|
@test ndims(p) == 2
|
||||||
|
|
||||||
|
@test p[1][end] isa Plots.Series
|
||||||
|
show(devnull, p[1])
|
||||||
|
|
||||||
|
@test Plots.getplot(p) == p
|
||||||
|
@test Plots.getattr(p) == p.attr
|
||||||
|
@test Plots.backend_object(p) == p.o
|
||||||
|
@test occursin("Plot", string(p))
|
||||||
|
print(devnull, p)
|
||||||
|
|
||||||
|
@test Plots.to_pixels(1Plots.mm) isa AbstractFloat
|
||||||
|
@test Plots.ispositive(1Plots.mm)
|
||||||
|
@test size(Plots.defaultbox) == (0Plots.mm, 0Plots.mm)
|
||||||
|
show(devnull, Plots.defaultbox)
|
||||||
|
show(devnull, p.layout)
|
||||||
|
|
||||||
|
@test Plots.make_measure_hor(1Plots.mm) == 1Plots.mm
|
||||||
|
@test Plots.make_measure_vert(1Plots.mm) == 1Plots.mm
|
||||||
|
|
||||||
|
@test Plots.parent(p.layout) isa Plots.RootLayout
|
||||||
|
show(devnull, Plots.parent_bbox(p.layout))
|
||||||
|
|
||||||
|
rl = Plots.RootLayout()
|
||||||
|
show(devnull, rl)
|
||||||
|
@test parent(rl) === nothing
|
||||||
|
@test Plots.parent_bbox(rl) == Plots.defaultbox
|
||||||
|
@test Plots.bbox(rl) == Plots.defaultbox
|
||||||
|
|
||||||
|
el = Plots.EmptyLayout()
|
||||||
|
@test Plots.update_position!(el) === nothing
|
||||||
|
@test size(el) == (0, 0)
|
||||||
|
@test length(el) == 0
|
||||||
|
@test el[1, 1] === nothing
|
||||||
|
|
||||||
|
@test Plots.left(el) == 0Plots.mm
|
||||||
|
@test Plots.top(el) == 0Plots.mm
|
||||||
|
@test Plots.right(el) == 0Plots.mm
|
||||||
|
@test Plots.bottom(el) == 0Plots.mm
|
||||||
|
|
||||||
|
@test_throws ErrorException Plots.layout_args(nothing)
|
||||||
|
end
|
||||||
|
|||||||
@ -21,16 +21,19 @@ end
|
|||||||
@test !haskey(axis.contents[1].options.dict, "fill")
|
@test !haskey(axis.contents[1].options.dict, "fill")
|
||||||
|
|
||||||
@testset "Legends" begin
|
@testset "Legends" begin
|
||||||
legends_plot = plot(rand(5, 2), lab = ["1" ""])
|
legends_plot = plot(rand(5, 2), lab = ["1" ""], arrow = true)
|
||||||
scatter!(legends_plot, rand(5))
|
scatter!(legends_plot, rand(5))
|
||||||
Plots._update_plot_object(legends_plot)
|
Plots._update_plot_object(legends_plot)
|
||||||
axis_contents = Plots.pgfx_axes(legends_plot.o)[1].contents
|
axis_contents = Plots.pgfx_axes(legends_plot.o)[1].contents
|
||||||
leg_entries = filter(x -> x isa PGFPlotsX.LegendEntry, axis_contents)
|
leg_entries = filter(x -> x isa PGFPlotsX.LegendEntry, axis_contents)
|
||||||
series = filter(x -> x isa PGFPlotsX.Plot, axis_contents)
|
series = filter(x -> x isa PGFPlotsX.Plot, axis_contents)
|
||||||
@test length(leg_entries) == 2
|
@test length(leg_entries) == 2
|
||||||
|
@test length(series) == 5
|
||||||
@test !haskey(series[1].options.dict, "forget plot")
|
@test !haskey(series[1].options.dict, "forget plot")
|
||||||
@test haskey(series[2].options.dict, "forget plot")
|
@test haskey(series[2].options.dict, "forget plot")
|
||||||
@test !haskey(series[3].options.dict, "forget plot")
|
@test haskey(series[3].options.dict, "forget plot")
|
||||||
|
@test haskey(series[4].options.dict, "forget plot")
|
||||||
|
@test !haskey(series[5].options.dict, "forget plot")
|
||||||
end # testset
|
end # testset
|
||||||
|
|
||||||
@testset "3D docs example" begin
|
@testset "3D docs example" begin
|
||||||
|
|||||||
@ -55,4 +55,10 @@ using Plots, Test
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@testset "Extra kwargs" begin
|
||||||
|
pl = plot(1:5, test = "me")
|
||||||
|
@test Plots.plotly_series(pl)[1][:test] == "me"
|
||||||
|
pl = plot(1:5, test = "me", extra_kwargs = :plot)
|
||||||
|
@test Plots.plotly_layout(pl)[:test] == "me"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -7,42 +7,132 @@ using Plots, Test
|
|||||||
xlims!((1, 20))
|
xlims!((1, 20))
|
||||||
@test xlims(p) == (1, 20)
|
@test xlims(p) == (1, 20)
|
||||||
|
|
||||||
|
xlims!(p, (1, 21))
|
||||||
|
@test xlims(p) == (1, 21)
|
||||||
|
|
||||||
ylims!((-1, 1))
|
ylims!((-1, 1))
|
||||||
@test ylims(p) == (-1, 1)
|
@test ylims(p) == (-1, 1)
|
||||||
|
|
||||||
|
ylims!(p, (-2, 2))
|
||||||
|
@test ylims(p) == (-2, 2)
|
||||||
|
|
||||||
zlims!((-1, 1))
|
zlims!((-1, 1))
|
||||||
@test zlims(p) == (-1, 1)
|
@test zlims(p) == (-1, 1)
|
||||||
|
|
||||||
|
zlims!(p, (-2, 2))
|
||||||
|
@test zlims(p) == (-2, 2)
|
||||||
|
|
||||||
xlims!(-1, 11)
|
xlims!(-1, 11)
|
||||||
@test xlims(p) == (-1, 11)
|
@test xlims(p) == (-1, 11)
|
||||||
|
|
||||||
|
xlims!(p, -2, 12)
|
||||||
|
@test xlims(p) == (-2, 12)
|
||||||
|
|
||||||
ylims!((-10, 10))
|
ylims!((-10, 10))
|
||||||
@test ylims(p) == (-10, 10)
|
@test ylims(p) == (-10, 10)
|
||||||
|
|
||||||
|
ylims!(p, (-11, 9))
|
||||||
|
@test ylims(p) == (-11, 9)
|
||||||
|
|
||||||
zlims!((-10, 10))
|
zlims!((-10, 10))
|
||||||
@test zlims(p) == (-10, 10)
|
@test zlims(p) == (-10, 10)
|
||||||
|
|
||||||
|
zlims!(p, (-9, 8))
|
||||||
|
@test zlims(p) == (-9, 8)
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Set Title / Labels" begin
|
||||||
|
p = plot()
|
||||||
|
title!(p, "Foo")
|
||||||
|
sp = p[1]
|
||||||
|
@test sp[:title] == "Foo"
|
||||||
|
xlabel!(p, "xlabel")
|
||||||
|
@test sp[:xaxis][:guide] == "xlabel"
|
||||||
|
ylabel!(p, "ylabel")
|
||||||
|
@test sp[:yaxis][:guide] == "ylabel"
|
||||||
|
end
|
||||||
|
|
||||||
|
@testset "Misc" begin
|
||||||
|
p = plot()
|
||||||
|
sp = p[1]
|
||||||
|
|
||||||
|
xflip!(p)
|
||||||
|
@test sp[:xaxis][:flip]
|
||||||
|
|
||||||
|
yflip!(p)
|
||||||
|
@test sp[:yaxis][:flip]
|
||||||
|
|
||||||
|
xgrid!(p, true)
|
||||||
|
@test sp[:xaxis][:grid]
|
||||||
|
|
||||||
|
xgrid!(p, false)
|
||||||
|
@test !sp[:xaxis][:grid]
|
||||||
|
|
||||||
|
ygrid!(p, true)
|
||||||
|
@test sp[:yaxis][:grid]
|
||||||
|
|
||||||
|
ygrid!(p, false)
|
||||||
|
@test !sp[:yaxis][:grid]
|
||||||
|
|
||||||
|
ann = [(7, 3, "(7,3)"), (3, 7, text("hey", 14, :left, :top, :green))]
|
||||||
|
annotate!(p, ann)
|
||||||
|
annotate!(p, ann...)
|
||||||
|
|
||||||
|
xaxis!(p, true)
|
||||||
|
@test sp[:xaxis][:showaxis]
|
||||||
|
|
||||||
|
xaxis!(p, false)
|
||||||
|
@test !sp[:xaxis][:showaxis]
|
||||||
|
|
||||||
|
yaxis!(p, true)
|
||||||
|
@test sp[:yaxis][:showaxis]
|
||||||
|
|
||||||
|
yaxis!(p, false)
|
||||||
|
@test !sp[:yaxis][:showaxis]
|
||||||
|
|
||||||
|
p = plot3d([1, 2], [1, 2], [1, 2])
|
||||||
|
plot3d!(p, [3, 4], [3, 4], [3, 4])
|
||||||
|
@test Plots.series_list(p[1])[1][:seriestype] == :path3d
|
||||||
end
|
end
|
||||||
|
|
||||||
@testset "Set Ticks" begin
|
@testset "Set Ticks" begin
|
||||||
p = plot([0, 2, 3, 4, 5, 6, 7, 8, 9, 10])
|
p = plot([0, 2, 3, 4, 5, 6, 7, 8, 9, 10])
|
||||||
|
sp = p[1]
|
||||||
|
|
||||||
xticks = 2:6
|
xticks = 2:6
|
||||||
xticks!(xticks)
|
xticks!(xticks)
|
||||||
@test Plots.get_subplot(current(), 1).attr[:xaxis][:ticks] == xticks
|
@test sp.attr[:xaxis][:ticks] == xticks
|
||||||
|
|
||||||
|
xticks = 1:5
|
||||||
|
xticks!(p, xticks)
|
||||||
|
@test sp.attr[:xaxis][:ticks] == xticks
|
||||||
|
|
||||||
yticks = 0.2:0.1:0.7
|
yticks = 0.2:0.1:0.7
|
||||||
yticks!(yticks)
|
yticks!(yticks)
|
||||||
@test Plots.get_subplot(current(), 1).attr[:yaxis][:ticks] == yticks
|
@test sp.attr[:yaxis][:ticks] == yticks
|
||||||
|
|
||||||
|
yticks = 0.1:0.5
|
||||||
|
yticks!(p, yticks)
|
||||||
|
@test sp.attr[:yaxis][:ticks] == yticks
|
||||||
|
|
||||||
xticks = [5, 6, 7.5]
|
xticks = [5, 6, 7.5]
|
||||||
xlabels = ["a", "b", "c"]
|
xlabels = ["a", "b", "c"]
|
||||||
|
|
||||||
xticks!(xticks, xlabels)
|
xticks!(xticks, xlabels)
|
||||||
@test Plots.get_subplot(current(), 1).attr[:xaxis][:ticks] == (xticks, xlabels)
|
@test sp.attr[:xaxis][:ticks] == (xticks, xlabels)
|
||||||
|
|
||||||
|
xticks = [5, 2]
|
||||||
|
xlabels = ["b", "a"]
|
||||||
|
xticks!(p, xticks, xlabels)
|
||||||
|
@test sp.attr[:xaxis][:ticks] == (xticks, xlabels)
|
||||||
|
|
||||||
yticks = [0.5, 0.6, 0.75]
|
yticks = [0.5, 0.6, 0.75]
|
||||||
ylabels = ["z", "y", "x"]
|
ylabels = ["z", "y", "x"]
|
||||||
yticks!(yticks, ylabels)
|
yticks!(yticks, ylabels)
|
||||||
@test Plots.get_subplot(current(), 1).attr[:yaxis][:ticks] == (yticks, ylabels)
|
@test sp.attr[:yaxis][:ticks] == (yticks, ylabels)
|
||||||
|
|
||||||
|
yticks = [0.5, 0.1]
|
||||||
|
ylabels = ["z", "y"]
|
||||||
|
yticks!(p, yticks, ylabels)
|
||||||
|
@test sp.attr[:yaxis][:ticks] == (yticks, ylabels)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user