svelte-plots-basic 3.0.2 → 3.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -827,7 +827,7 @@ Here is an example of simple 3D scatter plot:
827
827
 
828
828
  You can also add `Lines`, `Segments` and `Mesh` series to 3D plots.
829
829
 
830
- Check more advanced example in Svelte REPL with mouse and keyboard support, and more: [plots-3d]()
830
+ Check more advanced example in Svelte REPL with mouse and keyboard support, and more: [plots-3d](https://svelte.dev/playground/2294eecba7d7477ab9a09c1734d32ac2)
831
831
 
832
832
 
833
833
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "svelte-plots-basic",
3
3
  "description": "Svelte components for creating simple plots",
4
- "version": "3.0.2",
4
+ "version": "3.0.4",
5
5
  "author": "Sergey Kucheryavskiy",
6
6
  "license": "MIT",
7
7
  "private": false,
@@ -356,6 +356,8 @@
356
356
  }
357
357
 
358
358
 
359
+ .colormap-legend text,
360
+ .colormap-legend tspan,
359
361
  .series-points text,
360
362
  .series-points tspan {
361
363
  cursor: default;
@@ -10,7 +10,6 @@
10
10
  - `lineColor`- border colors of label symbols, default: `'transparent'`.
11
11
  - `lineWidth`- border width of label symbols in pixels, default: `0`.
12
12
  - `textSize`- size of label symbols in em, default: `1`.
13
- - `className`- CSS class name for the labels group, default: `'series-text'`.
14
13
  - `rotateAngle`- angle to rotate labels, default: `0`.
15
14
  - `onclick` - function (callback) to be called when user clicks on a label.
16
15
 
@@ -42,8 +41,8 @@
42
41
  labels, // array with labels (strings)
43
42
  pos = 0, // position of labels related to coordinates (middle, bottom, left, top, right)
44
43
  faceColor = Colors.PRIMARY_TEXT, // face color of label symbols
45
- lineColor = 'transparent', // border colors of label symbols
46
- lineWidth = 0, // border width of label symbols
44
+ lineColor = 'transparent', // border colors of label symbols
45
+ lineWidth = 0, // border width of label symbols
47
46
  textSize = 1, // size of label symbols
48
47
  rotateAngle = 0, // angle to rotate labels
49
48
  onclick, // function to be called if onclick event fires
@@ -87,8 +86,8 @@
87
86
 
88
87
  // define x and y shifts for positioning
89
88
  const m = $derived(LABELS_MARGIN[axes.scales().plot]);
90
- const dx = $derived([0, 0, m, 0, -m, m]);
91
- const dy = $derived([0, m, 0, -m, 0, m]);
89
+ const dx = $derived([0, 0, -m, 0, m, m]);
90
+ const dy = $derived([0, m, 0, -m, 0, m]);
92
91
 
93
92
  // styles for the elements
94
93
  const textStyleStr = $derived(`fill:${faceColor};stroke-width:${lineWidth}px;stroke:${lineColor};font-size:${textSize}em;`);
@@ -113,13 +112,17 @@
113
112
  {:else if (Array.isArray(pos) || ArrayBuffer.isView(pos))}
114
113
 
115
114
  {#each x as v, i}
116
- <text data-id={i} x={x[i]} y={y[i]} dx={dx[pos[i]]} dy={dy[pos[i]]} text-anchor={textAnchors[pos[i]]}>{@html labels[i]}</text>
115
+ <text data-id={i} x={x[i]} y={y[i]} dx={dx[pos[i]]} dy={dy[pos[i]]}
116
+ transform={rotateAngle !== undefined ? `rotate(${rotateAngle}, ${x[i] + dx[pos]}, ${y[i] + dy[pos]})` : ''}
117
+ text-anchor={textAnchors[pos[i]]}>{@html labels[i]}</text>
117
118
  {/each}
118
119
 
119
120
  {:else}
120
121
 
121
122
  {#each x as v, i}
122
- <text data-id={i} x={x[i]} y={y[i]} dx={dx[pos]} dy={dy[pos]} text-anchor={textAnchors[pos]}>{@html labels[i]}</text>
123
+ <text data-id={i} x={x[i]} y={y[i]} dx={dx[pos]} dy={dy[pos]}
124
+ transform={rotateAngle !== undefined ? `rotate(${rotateAngle}, ${x[i] + dx[pos]}, ${y[i] + dy[pos]})` : ''}
125
+ text-anchor={textAnchors[pos]}>{@html labels[i]}</text>
123
126
  {/each}
124
127
 
125
128
  {/if}