plotting data on X-Axis based on days of the weeks sunday, monday,.......saturaday
Jivraj wrote at 2014-03-10 11:49:
objo wrote at 2014-03-10 21:31:
DateTimeAxis
can support day names in the StringFormat
. Try using "ddd" or "dddd". I think we should add some examples on this. Also note that there are a few issues related to the DateTimeAxis,
I think this class is ready for an overhaul.Jivraj wrote at 2014-03-18 06:44:
BarSeries with DateTimeAxis
sargent wrote at 2014-06-02 05:20:
From the research I have done it appears a RectangularBarSeries graph would work out best for me. I've looked around but can not find any good examples or documentation on this. Could someone provide a simple example to get me started? Thanks.
objo wrote at 2014-06-06 21:08:
RectangleBarSeriesExamples
in the ExampleLibrary? I think it should be possible to use it with
DateTimeAxis
and CategoryAxis
- just use DateTimeAxis.ToDouble
to convert the DateTime values to numbers. And please create an example we can include in the ExampleLibrary!How to increase DPI in PngExporter call to get higher quality image?
ambrein2 wrote at 2014-04-11 12:59:
I am using PngExporter to export PlotModel to am image. By default dpi is 96 but that leaves some "jaggies" in the image so I want to increase dpi for better quality image. But when I increase dpi and try to use PngExporter the image that get's created is a zoomed in image. I don't want this, I want the height and width of the image to be same as that of the original height and width of the PlotModel. Any ideas how I can do that?
tibel wrote at 2014-05-15 09:57:
seems that PNG export does not work with different DPI (resolution) settings.
objo wrote at 2014-05-15 10:39:
objo wrote at 2014-05-15 21:19:
Dragging a Chart
AzureGulf wrote at 2012-09-11 00:23:
Hi Objo
Many thanks - I have just started using OxyPlot and it's cool - I've probably missed this in your documentation/discussions, but could you (or anyone) please tell me how I can enable dragging of a chart when the user clicks and holds down the left mouse button.
I have tried 'interaction.behavior' and 'interaction.triggers' with no success - I suspect that you might have taken over mouse gestures & interaction??
best regards
objo wrote at 2012-09-11 06:25:
Yes, the plot control handles the left clicks. I agree this should be customizable, this is already registered at http://oxyplot.codeplex.com/workitem/9625!
AzureGulf wrote at 2012-09-11 15:52:
Thanks for the quick response - will await the next version ;-)
Valuta next to axis value (solved)
Devin19 wrote at 2013-10-16 10:55:
Example:
€ 100 instead of 100
Can I manipulate the string that's shown somehow? There is no example doing something like this, and the documentation isn't covering it either.
everytimer wrote at 2013-10-16 15:26:
var s1 = new LineSeries() {LabelFormatString = "€ {1:f2}"};
If you are using other series you will need modify the source code to include this behavior.Good luck.
Devin19 wrote at 2013-10-16 15:41:
I meant I'd like to see the € on the label at the axis on the left.
(I can't see the label in the chart since I'm using the Android version which doesn't support mouse events)
everytimer wrote at 2013-10-16 15:45:
Good luck
Devin19 wrote at 2013-10-16 15:51:
I could change the title, but I'd rather see the € sign at each value on the axis.
everytimer wrote at 2013-10-17 01:17:
myAxis.StringFormat = "0 €";
Good luckDevin19 wrote at 2013-10-17 09:26:
Bind a column from a ColumnSeries with its Label from CategoryAxis
I'm trying to build a ColumnSeries where instead of clustered bars I'd have just one item per 'group'. I'll try to give an example to illustrate the case:
- I have a collection with the items "Dog", "Cat, "Rat" and "Bird", each one with a (double)value that changes over time.
-I would like to plot a column chart, with the first bar being labeled as "Dog", second as "Cat", and so on. The bars must not be clustered.
-The chart will be updated given a refreshTimer, and it is possible to add new items to the chart, as well as changing or removing the existing ones.
My first approach was creating a generic ColumnSeries and add each of my items as ColumnItems. It worked at first, but when I had to implement the "Remove Item" operation, it became chaos as Labels from the CategoryAxis were not binded to the ColumnItem in any way. I tried to write a logic to solve the issue, but in the end, it failed. While trying this method, I did NOT set up the ItemSource of the CategoryAxis, instead I was adding and removing items from the ActualLabel manually.
On my second attempt, I'm trying to create a ColumnSeries for each of the items, but by doing so, I end up with 4 Labels ("Dog", "Cat", "Rat and "Bird"), each having a group of columns composed by another 4 columns, as each ColumnSeries has the same ItemSource holding all the Items I wanna plot. When I remove an Item, it removes the respective bar from each group, but does not remove its supposed Label (or group). This time, I had to set up the ItemSource from CategoryAxis (same ItemSource of the ColumnSeries), but I'm not sure if or how the bind works (for example, if I add an item to the collection of the ItemSource, will a new Label be created?).
If someone could guide me through a solution for this problem, I would highly appreciate. Thanks in advance.
PS: I can upload images if it helps understanding the case.
XAML properties values overwritten by the PlotModel
Gimly wrote at 2014-02-03 11:52:
I was wondering about something a bit annoying when using the PlotModel in a MVVM scenario.
As the library is now, the PlotModel values overwrites all properties values that are defined directly in the XAML. This means that, when using the PlotModel, no properties can be set in the XAML.
This is annoying, because it means that some UI stuff must be set in the VM (where the PlotModel is setup).
I'm currently defining my PlotModel in my VM because it's too complex to be defined in the XAML only (dynamic number of series mostly). Even though this is a necessity for me, I still would like to define some things from the XAML.
For example, I would like to set a specific font for the Title of the plot. This is typically a UI stuff that my VM should have no knowledge about. Unfortunately, if I set it up in my XAML, it is overwritten by the default value when the biding of the PlotModel kicks-in.
So, my question, would it be possible to, when using XAML and databinding, prioritize the value set in the XAML (if it has been re-defined) over the value in the PlotModel?
Hope this is clear enough.
Thanks,
Gimly
objo wrote at 2014-02-04 19:20:
Should not be very difficult to implement, I think.
Allow customization of tooltips
GeertvanHorrik wrote at 2014-03-11 10:09:
Would it be feasible to allow FrameworkElement as well to be used (in the ShapesRenderContext of WPF / SL) as a tooltip?
Axis titles moved inside plot area after upgrade.
justslon wrote at 2014-04-28 11:41:
objo wrote at 2014-04-28 12:14:
objo wrote at 2014-04-29 12:23:
justslon wrote at 2014-04-30 05:55:
ps. Thank you for very fast response!
UPD. It seems, that oxyplot incorrectly calculates auto-margins when plot have right or top axes. After setting PlotMargins manually (i. e. PlotMargins="60, 60, 60, 60") everything works just fine. Hope this info helps to solve issue.
objo wrote at 2014-04-30 09:27:
PlotMargins
property of the PlotModel
? Try to increase the top and right values or use the default value (NaN,NaN,NaN,NaN
) to get 'automatic' margins.justslon wrote at 2014-05-01 06:06:
objo wrote at 2014-05-02 23:11:
PlotMargins
in the OxyPlot.Wpf.Plot
control and added some other missing properties. I also added a unit test that verifies the default values so this should not happen again.OxyImage seems to be leaking huge amounts of memory
willmoore88 wrote at 2013-08-28 14:48:
I'm not sure I 100% understand what it going on here but this is definitely the cause of my issues as just commenting out the line which creates the OxyImage solves the issue. Over an hour or so I am getting over 1GB of memory being used which in turn ends up in the application crashing.
using (Bitmap b = updateScatterArray())
{
using (MemoryStream stream = new MemoryStream())
{
b.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
stream.Seek(0, SeekOrigin.Begin);
image = new OxyImage(stream);
foreach (ImageAnnotation a in IntensityPlotModel.Annotations)
{
a.ImageSource = image;
}
IntensityPlotModel.RefreshPlot(true);
OnPropertyChanged("IntensityPlotModel");
}
}
Any help / pointers greatly appreciated. This is getting quite urgent now!! Ta.willmoore88 wrote at 2013-08-28 15:19:
objo wrote at 2013-08-28 15:26:
See also https://oxyplot.codeplex.com/workitem/10042
willmoore88 wrote at 2013-08-28 15:27:
willmoore88 wrote at 2013-08-28 15:35:
objo wrote at 2013-08-28 15:47:
willmoore88 wrote at 2013-08-28 15:52:
Servicio de atención al cliente por UserEcho