[WIP] Redesign plotting API
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Ativa
- Stack de tecnologia
- csharp, fsharp
- Domínio
- data-visualization
Direção de pesquisa
O ponto de entrada proposto é o tipo AngouriMath.Interactive.Plot, que retorna GenericChart para plotagem e métodos de slider. Comece localizando a implementação experimental de plotagem existente e compare seu comportamento em 2D, 3D e com slider com as assinaturas e os valores padrão listados aqui. Considera-se concluído quando a API reprojetada estiver implementada de forma consistente e houver uma decisão documentada sobre a questão não resolvida dos intervalos cujos valores são expressões.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Plotting API
Since 1.4 preview 1 one now can plot functions in "experimental"/preview mode. Time to make it prettier!
Root types
Will be in class Plot:
module AngouriMath.Interactive
...
type AnyFunc = obj
type AnyVar = obj
...
type Plot =
... // here the static members come
2D
Signature
static member plottingFunction(func : AnyFunc,
[<Optional;DefaultParameterValue(null)>] ?var : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?range : double seq
) : GenericChart
Functions
| Function | Default range |
|---|---|
cartesianLine |
[-1.0..0.01..1.0] |
cartesianScatter2D |
[-1.0..0.01..1.0] |
polarLine |
[0.0..0.01..3.1415] |
polarScatter |
[0.0..0.01..3.1415] |
3D
Signature
static member plottingFunction(func : AnyFunc,
[<Optional;DefaultParameterValue(null)>] ?var1 : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?var2 : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?range1 : double seq,
[<Optional;DefaultParameterValue(null)>] ?range2 : double seq
) : GenericChart
If no var was specified, they're taken from the expression in the alphabet order, e. g. for y + x the variables will be x and y.
Functions
| Function | Default range 1 | Default range 2 |
|---|---|---|
cartesianSurface |
[-1.0..0.05..1.0] |
[-1.0..0.05..1.0] |
cartesianScatter3D |
[-1.0..0.05..1.0] |
[-1.0..0.05..1.0] |
sphericalSurface |
[0.0..0.05..3.1415] |
[0.0..0.05..3.1415] |
sphericalScatter |
[0.0..0.05..3.1415] |
[0.0..0.05..3.1415] |
cylindricalSurface |
[0.0..0.05..3.1415] |
[0.0..0.05..1.0] |
cylindricalScatter |
[0.0..0.05..3.1415] |
[0.0..0.05..1.0] |
Sliders
For 2D
static member withSlider2D(func : AnyFunc,
plottingFunc : (AnyFunc * AnyVar Option * double seq option) -> GenericChart,
[<Optional;DefaultParameterValue(null)>] ?var : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?range : double seq,
[<Optional;DefaultParameterValue(null)>] ?param : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?paramRange : double seq,
) : GenericChart
If no parameter and argument is specified, the variables taken from the expression are ordered in alphabet order, and the parameter is the first of them. For example, in x + a the paramater is a and the variable is x.
The default value for range now is [1.0..0.1..2.0], but no default value for range (it will be passed as-is).
For 3D
static member withSlider3D(func : AnyFunc,
plottingFunc : (AnyFunc * AnyVar Option * AnyVar Option * double seq Option * double seq Option) -> GenericChart,
[<Optional;DefaultParameterValue(null)>] ?var1 : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?var2 : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?range1 : double seq,
[<Optional;DefaultParameterValue(null)>] ?range2 : double seq,
[<Optional;DefaultParameterValue(null)>] ?param : AnyVar,
[<Optional;DefaultParameterValue(null)>] ?paramRange : double seq,
) : GenericChart
Likewise, the param variable is defined as the first one by alphabet by default.
Unresolved questions
Can we let input expressions? e. g. range = [ 0.0..0.1.. (2 * pi) ]
- Linguagem predominante
- C#
- Estrelas
- 831
- Forks
- 79
- Merge médio
- 1h 12min
- PRs com merge (30d)
- 467
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de ASC-Community/AngouriMath
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
ASC-Community/AngouriMath#1945 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 43/100
ASC-Community/AngouriMath#1944 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 30/100
ASC-Community/AngouriMath#1807 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
ASC-Community/AngouriMath#1692 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 30/100
ASC-Community/AngouriMath#1690 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de ASC-Community/AngouriMath
Issues semelhantes
-
The test-platform skill doesn't say what three of its failures look likeTalvez já em andamento @yasmoradi assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
bitfoundation/bitplatform#14022 ·
Mantenedores costumam responder em até 1 dia
-
area-TableView bug needs-triage team-Controls
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
microsoft/microsoft-ui-xaml#12351 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
AudioClient and ImageClient file path overloads send the full local path as the multipart file nameTalvez já em andamento @sebxt assumiu hoje. Abertaarea: audio area: images feature-request
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
openai/openai-dotnet#1453 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 73/100
Mantenedores costumam responder em até 1 dia
-
Runtime diagnostics settings report canManage=true for every callerTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Abertaneeds-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
elsa-workflows/elsa-foundation#3130 ·
Mantenedores costumam responder em até 1 dia