ACosta Posted July 10, 2013 at 03:08 PM Report #518079 Posted July 10, 2013 at 03:08 PM Bons dias, Preciso novamente da vossa ajuda. Tenho um programa em VB.NET em que uso o Microsoft Chart para a elaboração do gráfico. No meu gráfico, que está em pleno funcionamento e os valores são obtidos directamente da base dados, tenho valores de temperaturas e de pressões em que os valores das temperaturas andam na ordem das 100 a 200 e os valores das pressões andam entre o 0 e 10. Isto é, como tenho apenas uma escala (eixo Y), os valores mais pequenos(da pressão) as variações não se notam muito porque a escala está muito grande por causa dos valores da temperatura. A minha questão é, existe alguma forma de ter duas escalas diferentes no mesmo gráfico? uma escala na esquerda e outra na direita do gráfico por exemplo, onde depois poderia definir nas series a que escala pertenciam. Espero que me tenha feito entender e que posso ajudar. Obrigado, António Costa
cdaniel.marques Posted July 10, 2013 at 07:37 PM Report #518136 Posted July 10, 2013 at 07:37 PM (edited) Vê se isto ajuda: Considerando uma séria chamada Student Chart1.Series.Add("Student") 'Adiciona séria ao Controlo Chart 'Adiciona os pontos Chart1.Series("Student").Points.AddXY("Jon", 10) Chart1.Series("Student").Points.AddXY("Jordan", 30) Chart1.Series("Student").Points.AddXY("Yen", 40) Chart1.Series("Student").Points.AddXY("Nick", 20) E no fim 'Define como eixo secundário Chart1.Series("Student").YAxisType = DataVisualization.Charting.AxisType.Secondary Se ajudar, podes encontrar informção mais detalhada na documentação no MSDN em: http://msdn.microsoft.com/en-us/library/dd489216.aspx Nomeadamente, uma tabela com as várias formas de posicionar as séries (esquerda, direita, cima ou baixo). Edited July 10, 2013 at 07:39 PM by cdaniel.marques
ACosta Posted July 11, 2013 at 04:40 PM Author Report #518360 Posted July 11, 2013 at 04:40 PM Encontrei este pequeno pedaço de código na net que me ajudou bastante: chrtMain.Series(0).YAxisType = AxisType.Primary chrtMain.Series(1).YAxisType = AxisType.Secondary chrtMain.ChartAreas(0).AxisY2.LineColor = Color.Transparent chrtMain.ChartAreas(0).AxisY2.MajorGrid.Enabled = False chrtMain.ChartAreas(0).AxisY2.Enabled = AxisEnabled.True chrtMain.ChartAreas(0).AxisY2.IsStartedFromZero = chrtMain.ChartAreas[0].AxisY.IsStartedFromZero o link que o cdaniel.marques disse também tem informação muito util. 😉 conclusão o chart da microsoft (gráfico) permite ter dois eixos (primário e secundário) tanto para o eixoX como para o eixoY . O que fiz foi ajustar as definições dos eixos à minha medida e associar as series ao eixoY primário ou secundário consoante a escala que quero.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now