Existe uma boa biblioteca de gráficos para o iPhone? [fechadas]

127

Eu preciso renderizar e exibir gráficos (gráficos de barras por enquanto, mas mais tipos podem ser necessários mais tarde) em um aplicativo para iPhone no qual estou trabalhando. Eu olhei em volta e parece que ainda não existem bibliotecas de gráficos maduras realmente boas para o iPhone. Também procurei algo escrito para Cocoa no Mac que possa ser adaptado, mas ainda não encontrei nada de bom.

Alguém já lidou com isso antes? Alguma recomendação?

Eu encontrei o Core Plot , mas parece estar nos estágios iniciais de desenvolvimento.

Edite para adicionar alguns detalhes de requisitos (como estão atualmente;))

  • Gráficos de barra
  • Gráficos de barras horizontais
  • Gráficos de barras empilhados duplos
  • Etiquetas do eixo (incluindo rotação de 90 graus no eixo y)
  • Etiquetas acima de cada barra no gráfico
  • Fundos sombreados ou personalizados
Mike Akers
fonte
SwiftCharts: github.com/i-schuetz/SwiftCharts de código aberto, gratuito, fácil de usar e personalizar. Vídeo: youtube.com/watch?v=cyAlKil3Pyk
Ixx
Você já considerou o SciChart? github.com/ABTSoftware/SciChart.iOS.Examples . Muito rápido, flexível e poderoso. Infelizmente, não é de código aberto, mas a equipe trabalhará duro para o seu negócio.
Dr. ABT
1
Para aqueles que são do Google, dê uma olhada em github.com/danielgindi/Charts
Jakob Egger
Mike, qual solução você achou melhor?
Daniel Brower

Respostas:

78

Um dos muitos fatores que motivou o projeto Core Plot foi a falta de boas estruturas de plotagem no iPhone. O Core Plot também abrange muitos outros casos de uso, incluindo sistemas de desktop, mas seu design inclui o suporte ao iPhone desde o início. Está ficando praticamente utilizável e atualmente está sendo usado em vários aplicativos para iPhone e OS X de remessa.

Edit 2/10

O Core Plot percorreu um longo caminho desde que publiquei o resumo. A estrutura agora possui gráficos de barras (incluindo gráficos de barras horizontais, acredito), rótulos de eixos (incluindo rotações aribrartidas) e preenchimentos e planos de fundo para gráficos. Não tenho certeza sobre gráficos de barras empilhados, mas não seria difícil adicionar à CPBarPlotclasse que implementa gráficos de barras. Quanto às anotações, há uma CPAnotationclasse que você pode subclassificar para adicionar suas anotações, se não houver a funcionalidade exata necessária.

Projeto no github .

Barry Wark
fonte
1
Acordado. Existem alguns bons programadores de cacau com espírito científico trabalhando nisso, então eu espero que ele avance rapidamente. Além disso, o Grupo do Google para isso está em groups.google.com/group/coreplot-discuss?hl=pt-BR . Vale a pena ler os arquivos para ver para onde as pessoas estão indo com isso.
Brad Larson
1
Analisei o Core Plot e parece que os gráficos de barras não foram completamente implementados. Ainda vou ficar de olho nesse projeto.
Mike Akers
3
Enquanto isso, muitos recursos foram adicionados ao Core Plot, incluindo gráficos de barras, gráficos de barras horizontais, rótulos de plotagem personalizados, rótulos angulares e temas (incluindo planos de fundo personalizados).
Brad Larson
1
O CorePlot é bom em termos de recursos, mas é dolorosamente lento. As interações mutli do toque são muito lentas. Estraga totalmente a experiência em um aplicativo para iPhone ou iPad.
Coline
Alguém usou o CorePlot recentemente? O que ou quanto melhorou desde então?
Pier-Luc Gendreau
7

Como alternativa comercial ao CorePlot, eu recomendo dar uma chance ao ShinobiControls , pois eles têm alguns gráficos bem parecidos. Eles também têm um desempenho muito bom, renderizando gráficos com mais de 100.000 pontos a 60fps e suporte multi-touch.

Como uma divulgação completa , trabalho para a Scott Logic, que é a empresa controladora da ShinobiControls.

ColinE
fonte
Parece bom, no entanto, vocês têm planos de desenvolver uma biblioteca para o OS X?
estranho
4

Eu tenho minha própria biblioteca chamada PowerPlot, disponível sob um modelo de licença dupla.

Você pode simplesmente seguir o link acima para instalar o aplicativo demo, que mostra vários exemplos de gráficos. Você também pode baixar a versão GPL da biblioteca e verificar se ela atende às suas necessidades. Com exceção dos gráficos de barras horizontais, ele possui os recursos solicitados - especificamente, gráficos de barras, gráficos de barras empilhadas, várias posições e orientações de rótulos de eixos.

user8472
fonte
3

Eu fiz minha própria pesquisa há um ou dois anos e acabei fazendo minhas próprias aulas de gráficos de linha porque não consegui encontrar nada que funcionasse exatamente do jeito que precisava. Porém, os dois maiores são: SM2DGraphView e GraphX . Também não tentei em um projeto do iPhone, mas sei que o SM2DGraphView é de código aberto para que você possa modificá-lo, se necessário.

Também considerei usar um WebView para usar uma biblioteca de gráficos JavaScript, mas isso é apenas um pensamento.

Marc Charbonneau
fonte
O HighCharts é uma excelente biblioteca de gráficos JavaScript, fyi.
Basil Bourque
3

há uma nova e agradável biblioteca de gráficos de pizza 3D. Gráficos 3D que você pode girar e dimensionar com os dedos + protocolo para obter informações sobre a fatia tocada

http://iphone.orpi.pl/?p=20

plusz
fonte
1
Obrigado por este, parece realmente ótimo!
Kixorz #
3

Eu precisava de um gráfico de radar (ou gráfico da web do Spider) e não consegui encontrar nenhum, então fiz minha própria implementação:

RPRadarChart

Você é livre para usá-lo como quiser, se precisar, me avise! Lentamente, adicionarei mais recursos a ele, se você quiser algo específico, pergunte-me através do github.

JP Illanes
fonte
1

Teoricamente, você pode usar a API do Google Chart junto com um invólucro de cacau . Esta poderia ser uma solução leve.

Julien Chastang
fonte
5
Eu considerei isso, mas o Google Charts não funcionará sem uma conexão à Internet.
21430 Mike Akers
1
Link para o Cacau invólucro está morto
brainray
1

Este parece ok também

s7graphview

(mas nunca tentei realmente).

yonel
fonte
2
Eu usei esse aqui e funcionará, mas para conjuntos de dados muito básicos. Alguns dos problemas que encontrei foram a incapacidade de plotar valores abaixo de zero e a tendência era arredondar valores não inteiros.
Josh Buhler