Por exemplo, aqui está um código que cria um gráfico aleatório em cada tick:
#include <Graphics\Graphic.mqh>
double Xg[10]={0,1,2,3,4,5,6,7,8,9};
double Yg[10]={0,0,0,0,0,0,0,0,0,0};
//------------------------------------------ intOnInit()
{
graf(); //desenhar o gráfico//---return(INIT_SUCCEEDED);
}
//------------------------------------------ voidOnTick()
{
for(int i=0; i<=9; i++){
Yg[i]=(int)MathRand()/1000;
}
ObjectDelete(0,"Graph");//excluir o gráfico, sei que essa não é a abordagem correta, mas não consigo fazer isso de outra forma.
graf(); //desenhar um novo gráfico
}
//-------------------------------------------------------------void graf(){
CGraphic graph;
graph.HistoryNameWidth(80);
graph.Create(0,"Graph",0,30,30,830,430);
CCurve *curve=graph.CurveAdd(Xg,Yg,CURVE_LINES);
graph.CurvePlotAll();
graph.Update(true);
}
//-------------------------------------------------------------
Não consigo descobrir como atualizar os dados sem excluir o gráfico. Por favor, diga-me quem sabe como fazer isso.
Изначально класс CCanvas содержал только два режима отрисовки графических примитивов— со сглаживанием (antialiasing, AA) и без него. Затем были добавлены новые функции для создания примитивов на основеалгоритма Ву:
Atualmente, mesmo que você primeiro desenhe um círculo com preenchimento usando o método FillCircle() e depois trace ao redor dele usando o método CircleWu(), a suavização é parcialmente perdida.
Você também precisa desses métodos de preenchimento de bordas suaves:
//---
Atualmente, mesmo que você primeiro desenhe um círculo com um preenchimento usando o método FillCircle() e, em seguida, trace ao redor dele usando o método CircleWu(), a suavização será parcialmente perdida.
Todos os métodos de suavização dependem muito da opacidade da linha. Com cerca de 50% de opacidade, tudo se torna sem serrilhado e apresenta artefatos.
Boa tarde, como exatamente você tentou redesenhar o gráfico?
Se você só precisa alterar os dados de uma curva específica, aqui está um exemplo:
//+------------------------------------------------------------------+
//| Função de início do programa de script|
//+------------------------------------------------------------------+
voidOnStart()
{
//--- dados 1
double x1[]={-10,-4,-1,2,3,4,5,6,7,8};
double y1[]={-5,4,-10,23,17,18,-9,13,17,4};
//--- dados 2
double x2[]={-10,-10,10,10};
double y2[]={-10,10,-10,10};
//--- gráfico
CGraphic graph;
graph.HistoryNameWidth(80);
graph.Create(0,"Graph",0,30,30,830,430);
//--- Pontos
CCurve *curve=graph.CurveAdd(x1,y1,CURVE_LINES);
graph.CurvePlot(0);
graph.Update();
Sleep(1000);
curve.Update(x2,y2);
graph.Redraw(true);
graph.Update();
Sleep(1000);
}
Por exemplo, aqui está um código que cria um gráfico aleatório em cada tick:
Não consigo descobrir como atualizar os dados sem excluir o gráfico. Por favor, diga-me quem sabe como fazer isso.
Por favor, alguém sabe como alterar os tamanhos e estilos de fonte das assinaturas nessa biblioteca? - Tentei o FontSet, mas não funcionou.....
Por favor, alguém sabe como alterar os tamanhos e estilos de fonte das assinaturas nessa biblioteca? - Tentei o FontSet, mas não funcionou.....
Abra o código-fonte da biblioteca e, na busca, digite font.
Abra o código-fonte da bibla e digite font na pesquisa.
Você pode fazer o shardcode diretamente lá? 😁
Achei que houvesse algum método pronto.
Na verdade, ao pesquisar por fonte, encontrei o FontSet, mas ele se recusa a cooperar.
Por favor, alguém sabe como alterar os tamanhos e estilos de fonte das assinaturas nessa biblioteca? - Tentei o FontSet, mas não funcionou.....
Para legendas na legenda?
graphicL.HistorySymbolSize(Point_K);//Get/Set o tamanho do símbolo dos símbolos dos símbolosPara assinaturas na legenda?
Obrigado.
Na verdade, também para os eixos.
Isso está claro no script, mas como atualizar no Expert Advisor? Por exemplo, aqui está um código que cria um gráfico aleatório a cada tick:
Não consigo descobrir como atualizar os dados sem excluir o gráfico. Por favor, diga-me quem sabe como fazer isso.
Alguma resposta?
Изначально класс CCanvas содержал только два режима отрисовки графических примитивов — со сглаживанием (antialiasing, AA) и без него. Затем были добавлены новые функции для создания примитивов на основе алгоритма Ву:
Faltam métodos com suavização para Arc() e Pie().
Também preciso desses métodos de preenchimento com bordas suavizadas:
//---
Atualmente, mesmo que você primeiro desenhe um círculo com preenchimento usando o método FillCircle() e depois trace ao redor dele usando o método CircleWu(), a suavização é parcialmente perdida.
Você também precisa desses métodos de preenchimento de bordas suaves:
//---
Atualmente, mesmo que você primeiro desenhe um círculo com um preenchimento usando o método FillCircle() e, em seguida, trace ao redor dele usando o método CircleWu(), a suavização será parcialmente perdida.
Todos os métodos de suavização dependem muito da opacidade da linha. Com cerca de 50% de opacidade, tudo se torna sem serrilhado e apresenta artefatos.