Olhei o wiki do Android, mas não encontrei a possibilidade de nomear o eixo x ou y.
Isso é possível?
Tudo o que é compatível com a versão Android é compatível aqui com a mesma API!
@danielgindi Eu entendo isso e já li a documentação, mas talvez eu tenha esquecido alguma coisa, sabe a resposta para minha pergunta?
Bem, atualmente não está implementado - no momento não estou planejando implementar, então você pode fazer isso :-)
Ou você pode solicitá-lo no repositório MPAndroidChart e quando estiver pronto, eu o puxarei aqui também
+1, Isso seria incrível e um recurso importante - todos nós somos ensinados desde o ensino fundamental a intitular nossos eixos! :)
é possível. Eu já fiz isso antes. semelhante a girar os rótulos do eixo x. O ponto inteiro está calculando o ponto de ancoragem correto para a rotação.
Eu poderia fazer um PR, mas a questão é: o que fiz foi simplesmente uma rotação de 90 e centralizado no meio do eixo y com um texto simples e cor de texto, fonte. Assim que o apoiarmos oficialmente, as pessoas perguntarão mais, como ângulos diferentes, posições, linhas múltiplas, etc ... Isso é doloroso
Não estou entendendo bem sua explicação, porque não há propriedade de rótulo de eixo para aplicar a rotação e centralização. Você apenas quer dizer que adicionou manualmente um rótulo à visualização do gráfico e aplicou manualmente algumas transformações a ele?
Respeitosamente, sugiro que até mesmo rótulos de eixo básicos seriam um grande benefício, e você não seria forçado a oferecer suporte a mais recursos do que gostaria (afinal, você atualmente não está planejando oferecer suporte a este). Espero que você reconsidere!
@UberJason Quer dizer,
Estou de férias ... então posso verificar meu código antigo e registrar um PR para a v3.
+1 Adoraria ver este recurso
+1 Adoraria ver este recurso
+1 Adoraria ver este recurso
+1 Adoraria ver este recurso
isso está implementado?
+1 Adoraria ver este recurso
+1
Existe uma maneira de obter uma posição de quadro que se possa usar para inserir qualquer UIView personalizado?
+1 adoraria ver esse recurso
isso está implementado? eu preciso disso.
Existe um PR # 2387, mas ainda não foi revisado.
+1 adoraria ver esse recurso
+1 adoraria ver esse recurso
1 adoraria ver esse recurso. .....
+1 adoraria ver esse recurso
+1 esse recurso seria ótimo !!
+1
olhe para # 2452 e # 2387
+1 adoraria ver esse recurso
+1 eu também
Realmente poderia usar este recurso ....
Eu também quero esse recurso.
Esperando por isso....
Eu também............
Eu também quero esse recurso ..
Eu também quero esse recurso .. Estou cansado a cada atualização do reescrito
Já vi muita conversa sobre a adição de títulos de eixo em vários segmentos, mas ainda não encontrei um exemplo de código de como adicioná-los. Estou usando o Swift 4.2. Meu gráfico está funcionando muito bem, exceto que não consigo fazer com que os títulos dos eixos apareçam. Alguém tem um exemplo de código?
Eu também corri para isso. É uma pena que a solicitação de recurso esteja aberta há cerca de 4 anos. Para implementá-lo, escrevi meu próprio renderizador de eixo y personalizado. Para obter esse título no eixo esquerdo, você pode fazer algo assim:
Em sua configuração de gráfico:
leftAxis.xOffset = 45
leftYAxisRenderer = MyYAxisRenderer(viewPortHandler: viewPortHandler, yAxis: leftAxis, transformer: getTransformer(forAxis: .left))
E crie seu renderizador personalizado:
class MyYAxisRenderer: YAxisRenderer {
private static let titleLabelPadding: CGFloat = 20
/**
Unfortunately iOS Charts has marked many of its methods with internal visibily
so they cannot be customized. Instead you often need to re-implement logic from
the charting framework.
*/
override func renderAxisLabels(context: CGContext) {
// Render the y-labels.
super.renderAxisLabels(context: context)
// Render the y-axis title using our custom renderer.
renderTitle(title: "Lorem ipsum dolor sit amet", inContext: context, x: MyYAxisRenderer.titleLabelPadding)
}
}
// MARK: Y-Axis titles.
private extension MyYAxisRenderer {
func renderTitle(title: String, inContext context: CGContext, x: CGFloat) {
guard let yAxis = self.axis as? YAxis else { return }
let attributes: [NSAttributedString.Key: Any] = [
.font: yAxis.labelFont,
.foregroundColor: yAxis.labelTextColor
]
// Determine the chart title's y-position.
let titleSize = title.size(withAttributes: attributes)
let verticalTitleSize = CGSize(width: titleSize.height, height: titleSize.width)
let point = CGPoint(x: x, y: (viewPortHandler.chartHeight - verticalTitleSize.height) / 2)
// Render the chart title.
ChartUtils.drawText(context: context,
text: title,
point: point,
attributes: attributes,
anchor: .zero,
angleRadians: .pi / -2)
}
}
Este exemplo renderizará o título do eixo y com um deslocamento / preenchimento esquerdo de 20px e os rótulos do eixo y com um deslocamento esquerdo de 45px.
Espero que ajude algumas pessoas ...
Tentando uma solução alternativa mais simples usando SwiftUI:
https://github.com/danielgindi/Charts/issues/4405
Comentários muito úteis
Eu também corri para isso. É uma pena que a solicitação de recurso esteja aberta há cerca de 4 anos. Para implementá-lo, escrevi meu próprio renderizador de eixo y personalizado. Para obter esse título no eixo esquerdo, você pode fazer algo assim:
Em sua configuração de gráfico:
E crie seu renderizador personalizado:
Este exemplo renderizará o título do eixo y com um deslocamento / preenchimento esquerdo de 20px e os rótulos do eixo y com um deslocamento esquerdo de 45px.
Espero que ajude algumas pessoas ...